Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Material Design 守破離〜えこよみ編〜
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
HiroYUKI Seto
March 28, 2018
Programming
1.6k
5
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Material Design 守破離〜えこよみ編〜
2018/3/28
Androidエンジニア デザイン部 #1
HiroYUKI Seto
March 28, 2018
More Decks by HiroYUKI Seto
See All by HiroYUKI Seto
Androidアプリの 安全なリファクタリングを行うパターン集
seto_hi
2
5k
UI TestやVisual Regression Testを コスパ良くやる
seto_hi
3
2k
事業支援というお仕事
seto_hi
0
470
MDCの内部実装から学ぶ 表現力の高いViewの作り方
seto_hi
5
1.9k
CoordinatorLayoutのBehaviorを使い倒す
seto_hi
1
480
Jetpack Compose
seto_hi
2
900
UI改善に繋がるエンジニアの立ち回り
seto_hi
2
4.9k
MDCのButtonのCorner Family
seto_hi
1
270
MDCのBottomAppBarのShadowの実現方法
seto_hi
0
1.1k
Other Decks in Programming
See All in Programming
高橋メソッドでCVE解説シリーズ 〜CVE-2026-112816〜
hakkadaikon
0
170
作れる、でも消せるか?──安全に「枯らして消す」機能削除術 / Drain, Then Delete
chobishiba
3
1.3k
Kotlinの15年とServer-Side Kotlin
n_takehata
1
190
AIが生成したコードは読むべきか?抽象化設計とコードの品質保証 / abstraction-design-and-quality
minodriven
14
8.1k
Next.js: The final boss of Web Performance
guaca
0
380
선언형 햅틱 라이브러리 진동을 소개합니다
l2hyunwoo
1
250
Materialが消えた日 〜真っ白なFlutterキャンバスにRenderObjectで絵を描く〜
umigishiaoi
0
130
Zero-Tap Sign-In対応、結局何をすればいいの?
mitohato14
0
1.2k
Lambda durable functionsでHuman in the Loopを楽に…楽に……
har1101
2
240
自作Discord音声botをLambda MicroVMsに移行した話 / Migrating My Discord Voice Bot to Lambda MicroVMs
akihisaikeda
1
240
當我們開始不讀 Code - AI Agent 時代,Code Review 與 Clean Code 還剩下什麼?
jame2408
1
350
flutter_test のその先へ — Flutter アプリの LLM 機能に「評価」という品質保証を
kosukesaigusa
0
170
Featured
See All Featured
Product Roadmaps are Hard
iamctodd
55
13k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.9k
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
1
490
HTML-Aware ERB: The Path to Reactive Rendering @ RubyCon 2026, Rimini, Italy
marcoroth
5
880
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
240
brightonSEO & MeasureFest 2025 - Winning Strategies for Black Friday CRO & PPC - Christian Goodrich
cargoodrich
3
890
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
310
Navigating Weather and Climate Data
rabernat
0
570
30 Presentation Tips
portentint
PRO
1
450
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
68
59k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.6k
Bootstrapping a Software Product
garrettdimon
PRO
306
120k
Transcript
Material Design 守破離 〜えこよみ編〜 Androidエンジニア デザイン部 #1 株式会社ノハナ 瀬戸優之 @seto_hi
自己紹介 • 瀬戸優之 Seto HiroYUKI @seto_hi • Androidエンジニア & アプリデザイン
• 株式会社ノハナ ◦ 一組でも多くの家族に笑顔を届ける ◦ 絶賛採用中 • Material Design大好き • 好きなAPIはCanvas#saveとViewGroup#layout
2018/2/22
2018/2/22 Release
None
えこよみ と Material Design
ガイドラインを守れば 必ず 使いやすいのか
ガイドラインを守れば 必ず 売れるのか
そうとは言い切れない
もう少し発展が必要
守破離
守破離 守破離(しゅはり)は、日本での茶道、武道、芸術等における師弟 関係のあり方の一つ。 守:支援のもとに作業を遂行できる(半人前)。 ~ 自律的に作業を遂行できる(1人前)。 破:作業を分析し改善・改良できる(1.5人前)。 離:新たな知識(技術)を開発できる(創造者)。 https://ja.wikipedia.org/wiki/%E5%AE%88%E7%A0%B4%E9%9B%A2
Material Designと守破離 守:ガイドラインを覚える ガイドラインを厳密に守る 破:ガイドラインの意図を理解して ガイドラインにないコンポーネントの作成 離:既存のガイドラインを破る 新たなガイドラインの作成
Material Design 守破離 〜えこよみ編〜
守
守
守
守
守
守
守 • 大前提:Material Designは素晴らしいガイドライン • ガイドラインを忠実に守った設計 ◦ 8dpのgrid ◦ Shadow
& Elevation ◦ Accent ColorとPrimary Color • 重要でない画面には有用 ◦ 工数削減 ▪ エンジニアもデザイナーも
破
破
破:CardViewの使い方 • CardViewのレイアウト ◦ 画像比率 • トップ画面をエモくしたい ◦ カードを作らなくても使われるアプリが理想 •
ポストカードの画像を有効活用する ◦ フォトブックアプリでも同様のアプローチ • 思い出は個別事象なのでリストでなくカード
破
破:中央ボタン • カードの裏表を切り替えるボタン • 独自Viewコンポーネント • 左右と時間軸の話 ◦ FABはなぜ画面右下か http://seto-hi.hatenablog.com/entry/2017/12/04/084404
▪ 左が過去・否定、右が未来、肯定 • 否定でも肯定でもない、そこそこ重要なボタン ◦ 画面中央に白ベースでFloating • まだ改善点がある
破:Progress • Progress Dialogがひとつもない(守) ◦ 全画面でProgressBar表示も2カ所だけ • ボタンと円形Progressの切り替え • まだ改善点がある
◦ チラつき、連続性など
離
離
離:プレビュー画面 • 現実世界を意識させた画面 ◦ ポストカードを買ってもらうためのアプリ ◦ Material Designの世界だけでは不十分 ◦ 背景、影、サイズなど調整
• 「バーンとエモくしてください」 ◦ ランディングページ、GooglePlayと共通の背景、配色 • まだまだ発展途上
エンジニアは デザインに どのように 向き合うか
エンジニアが武器にする Material Design (p13~) https://speakerdeck.com/seto_hi/enziniagawu-qi-nisurumaterial-design
実装 • 実装できるものを増やす • Viewの実装に関する知識 ◦ どんなViewコンポーネントがある ◦ 描画、レイアウト、アニメーション •
逆引きで実装できるようになる ◦ 「◦◦したら××になる」ではなく 「××を実現するのには◦◦したら良い」という知識 ◦ 実現力
カスタムViewの勘所 • Drawable ◦ LayerDrawable、GradientDrawable • アニメーション ◦ beginDelayedTransition +
Transition(ChangeBounds, Fade, Slide) ◦ ValueAnimator, ObjectAnimator, StateListAnimator • Canvas ◦ clipPath, translate, rotate, scale ◦ save, restoreToCount
オススメの実装資料 • Android Support Libraryのコード ◦ 特にdesignライブラリ
オススメの資料(Animation系) • サポートライブラリを支える技術 ◦ http://yaraki.github.io/slides/gdg-kobe-2016q3 • 動かす ◦ http://yaraki.github.io/slides/devfest-kansai-2016 •
In transition ◦ https://goo.gl/photos/puv99eA7nz98Nkku9 • How to implement material design animation ◦ https://speakerdeck.com/takahirom/how-to-implement-material-design-animation
デザインへの貢献 • デザインの実現可能性の判断 ◦ 工数の見積もり ▪ 工数は守<破<離 ▪ エンジニアがデザインをやると 画面設計と工数見積もりが同時にできる
◦ 理想と妥協点の折り合い ▪ デザインの意図のくみ取り ▪ 実現可能なUIを提案 • Viewの知識がプロダクトの効率を高める!
まとめ • ガイドラインと守破離 ◦ 守:記憶・実践 ◦ 破:理解・応用 ◦ 離:独立 •
エンジニアは実装の知識で貢献 ◦ 実現可能性の判断 ◦ 実装工数
以上