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
20210621-mftd-GoogleIORecap-Namazu
Search
Namazu
June 21, 2021
Technology
350
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
20210621-mftd-GoogleIORecap-Namazu
Namazu
June 21, 2021
Other Decks in Technology
See All in Technology
遠藤な_めぐろLT #38 「社内のAI活用推進」@麻布台_20261009
endonanana
0
140
AI × アーキテクト 第1・2章|生成AIの課題とアーキテクトの素養
daidaidai
0
170
Railsで挑む大量データ永続化 〜600億件を永続化するための設計とボトルネックとの戦い〜
occhi
1
630
日本語に強いオープンな大規模言語モデル「LLM-jp」
odashi
5
1.1k
S3 Filesで挑む! 八戸せんべい汁の食べ頃問題
usanchuu
0
110
専門領域のAIをどう評価するか
bengo4com
2
270
M5Stackで作る BLEマウス GPSログの世界
tomokusaba
PRO
0
430
『SAR衛星データ解析入門』のご紹介とその応用
syuchimu
0
120
オントロジーって 結局なにもの? AI エージェントに「意味」を渡す知識設計の話
greenmidori
0
230
Post AI時代のリファクタリング実践記 / Refactoring in the post AI era
kaminashi
1
260
実践! SRE × AI - ABEMA における AIOps -
tetsuya28
8
3.1k
USB PDを使ってスマホを労わりたい
raspython3
0
180
Featured
See All Featured
Reflections from 52 weeks, 52 projects
jeffersonlam
356
22k
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
280
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
56k
Context Engineering - Making Every Token Count
addyosmani
9
1.2k
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
220
Writing Fast Ruby
sferik
630
63k
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
300
Navigating Team Friction
lara
192
16k
Git: the NoSQL Database
bkeepers
PRO
433
67k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
540
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
410
Transcript
© 2021 eureka, Inc. All Rights Reserved. 初めての Jetpack Compose
【3社合同】Money Forward Tech Drive - #IO21 Recap 2021.6.21 Namazu @eureka
© 2021 eureka, Inc. All Rights Reserved. 自己紹介 • Namazu
• 2021年新卒Androidエンジニア • BlondeNamazu • @blonde_namazu
© 2021 eureka, Inc. All Rights Reserved.
4 © 2021 eureka, Inc. All Rights Reserved. CONFIDENTIAL INFORMATION:
Not for Public Distribution - Do Not Copy All Hands Meeting コミュニティチャット © 2021 eureka, Inc. All Rights Reserved. 新機能
5 © 2021 eureka, Inc. All Rights Reserved. CONFIDENTIAL INFORMATION:
Not for Public Distribution - Do Not Copy All Hands Meeting • Jetpack Composeとは? • Jetpack Compose移行のメリット • Jetpack Compose移行のコスト • まとめ 目次 © 2021 eureka, Inc. All Rights Reserved.
6 © 2021 eureka, Inc. All Rights Reserved. CONFIDENTIAL INFORMATION:
Not for Public Distribution - Do Not Copy All Hands Meeting Jetpack Composeとは? © 2021 eureka, Inc. All Rights Reserved.
© 2021 eureka, Inc. All Rights Reserved. Jetpack Composeとは? •
Googleが提供する宣言的UIツールキット • 既存のxmlベースのViewシステムの代替となる • 2021年7月に1.0 (stable) 配信予定! • 既に導入している企業も多数
© 2021 eureka, Inc. All Rights Reserved. Jetpack Composeとは? •
Jetpack Composeの例
© 2021 eureka, Inc. All Rights Reserved. Jetpack Composeとは? •
Jetpack Composeの例
10 © 2021 eureka, Inc. All Rights Reserved. CONFIDENTIAL INFORMATION:
Not for Public Distribution - Do Not Copy All Hands Meeting Jetpack Compose移行のメリット © 2021 eureka, Inc. All Rights Reserved.
© 2021 eureka, Inc. All Rights Reserved. Jetpack Compose移行のメリット 宣言的UI
SSOT デザインツール Compose Preview Sample Data Interactive Preview Live literals その他 Theming Fast Rendering Animation Preview
© 2021 eureka, Inc. All Rights Reserved. Jetpack Compose移行のメリット:宣言的UI 宣言的UI
SSOT デザインツール Compose Preview Sample Data Interactive Preview Live literals その他 Theming Fast Rendering Animation Preview
© 2021 eureka, Inc. All Rights Reserved. • 宣言的UIとは何か? ◦
“Single source of truth”に従う ◦ 与えられた状態に対してのみ依存し、一意に振る舞いが定まるUI ◦ 既存のxmlベースのViewシステムのような、状態に対応したUIの生成方法を記 述する手法とは異なる Jetpack Compose移行のメリット:宣言的UI
© 2021 eureka, Inc. All Rights Reserved. • 各Viewが状態を持ち、コードでそれぞれ更新していく仕組みは複雑 Jetpack
Compose移行のメリット:宣言的UI
© 2021 eureka, Inc. All Rights Reserved. • 宣言的UIではUIは与えられた状態に対して不変なViewを生成する Jetpack
Compose移行のメリット:宣言的UI
© 2021 eureka, Inc. All Rights Reserved. • Jetpack Composeの利点:表示ロジックのカプセル化
◦ Compose関数の中身に外部から アクセスすることは出来ない ◦ 意図しないUIのバグを未然に防ぐ Jetpack Compose移行のメリット:宣言的UI
© 2021 eureka, Inc. All Rights Reserved. Jetpack Compose移行のメリット:デザインツール 宣言的UI
SSOT デザインツール Compose Preview Sample Data Interactive Preview Live literals その他 Theming Fast Rendering Animation Preview
© 2021 eureka, Inc. All Rights Reserved. Compose Preview •
UIパーツ単位でプレビュー出来る • @Preview を付けるだけ! • 同時に様々なパターンをプレビューす ることが可能 ex) Light Theme / Dark Theme スクリーン全体 / UI単体 Jetpack Compose移行のメリット:デザインツール
© 2021 eureka, Inc. All Rights Reserved. Compose Preview •
UIパーツ単位でプレビュー出来る • @Preview を付けるだけ! • 同時に様々なパターンをプレビューす ることが可能 ex) Light Theme / Dark Theme スクリーン全体 / UI単体 Jetpack Compose移行のメリット:デザインツール
© 2021 eureka, Inc. All Rights Reserved. Jetpack Compose移行のメリット:デザインツール Sample
Data • UIに与える状態について様々なパター ンを同時に検証可能 ex) リストのデータ数 0/少/多 文字列長 0/短/長
© 2021 eureka, Inc. All Rights Reserved. Sample Data Jetpack
Compose移行のメリット:デザインツール • UIに与える状態について様々なパター ンを同時に検証可能 ex) リストのデータ数 0/少/多 文字列長 0/短/長
© 2021 eureka, Inc. All Rights Reserved. Interactive Preview Jetpack
Compose移行のメリット:デザインツール • プレビュー画面でユーザー操作に対応 するUIの挙動を確認可能
© 2021 eureka, Inc. All Rights Reserved. Live literals Jetpack
Compose移行のメリット:デザインツール • リテラルの変更を即座にプレビューに 反映 ex) テキスト、数値、色、etc…
© 2021 eureka, Inc. All Rights Reserved. Jetpack Compose移行のメリット:その他 宣言的UI
SSOT デザインツール Compose Preview Sample Data Interactive Preview Live literals その他 Theming Fast Rendering Animation Preview
© 2021 eureka, Inc. All Rights Reserved. • Material Designに基づくアプリ独自のテーマ
• ネストされたUIの描画パフォーマンスの向上 • アニメーションサポートの強化 Jetpack Compose移行のメリット:その他
26 © 2021 eureka, Inc. All Rights Reserved. CONFIDENTIAL INFORMATION:
Not for Public Distribution - Do Not Copy All Hands Meeting Jetpack Compose移行のコスト © 2021 eureka, Inc. All Rights Reserved.
© 2021 eureka, Inc. All Rights Reserved. Jetpack Compose移行のコスト xmlベースのViewシステムと共存可能なので、徐々に移行できる!
© 2021 eureka, Inc. All Rights Reserved. Jetpack Compose移行のコスト Compose
in XML, XML in Composeのどちらも可能!
29 © 2021 eureka, Inc. All Rights Reserved. CONFIDENTIAL INFORMATION:
Not for Public Distribution - Do Not Copy All Hands Meeting まとめ © 2021 eureka, Inc. All Rights Reserved.
© 2021 eureka, Inc. All Rights Reserved. まとめ • Jetpack
Composeとは宣言的UIツールキットである • Jetpack Compose移行のメリットは多数! ◦ 宣言的UIの実現 ◦ デザインツールのサポートが強力 ◦ テーマの一貫性が保てる • Jetpack ComposeはxmlベースのViewシステムと 共存可能なので、徐々に移行可能!
© 2021 eureka, Inc. All Rights Reserved. 関連セッション
32 © 2021 eureka, Inc. All Rights Reserved. CONFIDENTIAL INFORMATION:
Not for Public Distribution - Do Not Copy All Hands Meeting 関連セッション © 2021 eureka, Inc. All Rights Reserved.
© 2021 eureka, Inc. All Rights Reserved. 関連セッション What’s new
in Jetpack Compose • Jetpack Composeの概要を16分で説明 • まずはこれを見るのがオススメ
© 2021 eureka, Inc. All Rights Reserved. 関連セッション • Jetpack
Composeの基本的な使い方を 教えてくれるWorkShop • 50分あるが、非常に分かりやすい Jetpack Basics
© 2021 eureka, Inc. All Rights Reserved. 関連セッション • 既存のJetpackライブラリとComposeの
組み合わせ方を説明 • Composeのベストプラクティスにも触れて いるので、実用に役立ちそう Using Jetpack Libraries in Compose
© 2021 eureka, Inc. All Rights Reserved. 関連セッション • セッション後半でJetpack
Composeのデ ザインツールについて説明 • 前半の内容はComposeに関係ないが、 アニメーションに関してのアップデートも面 白かったので余裕があれば是非 What’s new in design tools
© 2021 eureka, Inc. All Rights Reserved. 関連セッション • Jetpack
Compose中でマテリアルデザイ ンを用いる方法の説明 • デザイナーの参考にもなりそう Build beautiful Material Design apps with Jetpack Compose