Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Gemini in Android Studio 使ってますか?
Search
satoryo56
June 25, 2024
Education
0
930
Gemini in Android Studio 使ってますか?
satoryo56
June 25, 2024
Tweet
Share
More Decks by satoryo56
See All by satoryo56
WWDC25に現地参加してきました / satoryo attended WWDC25 onsite
satoryo56
0
82
STORES Tech Conf 2024 “New Engineering” - 複数のScrollViewが連動!STORES レジ でスプレッドシート風UIを実装しました
satoryo56
0
1.4k
Other Decks in Education
See All in Education
Human-AI Interaction - Lecture 11 - Next Generation User Interfaces (4018166FNR)
signer
PRO
0
480
Course Review - Lecture 12 - Next Generation User Interfaces (4018166FNR)
signer
PRO
0
1.8k
Interaction - Lecture 10 - Information Visualisation (4019538FNR)
signer
PRO
0
2k
Avoin jakaminen ja Creative Commons -lisenssit
matleenalaakso
0
1.9k
生成AIとの上手な付き合い方【公開版】/ How to Get Along Well with Generative AI (Public Version)
handlename
0
540
万博マニアックマップを支えるオープンデータとその裏側
barsaka2
0
110
Case Studies and Course Review - Lecture 12 - Information Visualisation (4019538FNR)
signer
PRO
1
2k
生成AI
takenawa
0
10k
SARA Annual Report 2024-25
sara2023
1
190
Education-JAWS #3 ~教育現場に、AWSのチカラを~
masakiokuda
0
190
OpenSourceSummitJapanを運営してみた話
kujiraitakahiro
0
750
バックオフィス組織にも「チームトポロジー」の考えが使えるかもしれない!!
masakiokuda
0
110
Featured
See All Featured
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
Rails Girls Zürich Keynote
gr2m
95
14k
How to Think Like a Performance Engineer
csswizardry
25
1.8k
Unsuck your backbone
ammeep
671
58k
Visualization
eitanlees
146
16k
Code Reviewing Like a Champion
maltzj
524
40k
A better future with KSS
kneath
238
17k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
47
9.6k
Git: the NoSQL Database
bkeepers
PRO
431
65k
Build The Right Thing And Hit Your Dates
maggiecrowley
37
2.8k
The Invisible Side of Design
smashingmag
301
51k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
7
760
Transcript
Ebisu.mobile #6 Gemini in Android Studio 使ってますか?
自己紹介 2 佐藤 亮輔 さとう りょうすけ @satoryo056 STORES レジ・STORES 予約 Android /
iOS エンジニア エンジニア歴 ・Android 約 7 年(2017.4〜) ・iOS 約 1 年(2023.5〜)
Google I/O 2024 いかがでしたか? 3 引用
Gemini in Android Studio 4
Gemini in Android Studio 使ってますか? 5 もう使っているという方は ぜひコメントしてください ✋ ハッシュタグ
#ebisu_mobile もお願いします! まだ使っていない方は 今日のお昼ごはんをコメントしてくださいね 🍚
Gemini in Android Studio 6
Gemini in Android Studio でできること 7 ▪ チャット機能 ⚫ 自由形式でAndroid開発に関する質問ができる
⚫ 具体的なソースコードの生成を依頼できる ▪ ワンクリック操作 ⚫ ファイルの作成ができる ⚫ 生成したソースコードをコピーしたり既存のコードに挿入できる ▪ その他 ⚫ ソースコードの分析・コメント追加ができる ⚫ エラーのトラブルシューティングができる など
初見でsatoryoが思ったこと 8 確かに便利そうだけど 今まで Android Studio で使っていた Github Copilot と変わらなくない?
初見でsatoryoが思ったこと 9 みんなもそう思いませんか?
初見でsatoryoが思ったこと 10 思いますよね?
初見でsatoryoが思ったこと 11 そう、思うんですよ。
ということで 12 Gemini in Android と Github Copilot を対決させてみました⚔
Gemini vs Github Copilot 13 ▪ 今回の戦場 ⚫ Android Studio
Preview Koala ▪ 対決の内容 ⚫ チャット機能を使用 ⚫ コード生成の速度を測定
Gemini vs Github Copilot 14 ▪ チャットに入力する文章(お題) Jetpack Composeを使用したActivityを1つ作りたい。 任意の単語を50要素持った配列を縦型のリストで表示したい。
最初に、リストは10件だけ表示します。 その後リストの一番下までスクロールが完了したら10件追加で表示したい。
Gemini vs Github Copilot 15
Gemini vs Github Copilot 16
Gemini vs Github Copilot 17 生成できたのはいいけど実際にビルドできるの?
Gemini で生成したコード 18 ▪ ビルド結果 ⚫ 正常にビルドできた! ⚫ 追加ロードの処理も だいたいよさそう
Gemini で生成したコード 19
Github Copilot で生成したコード 20 ▪ ビルド結果 ⚫ エラーでビルドできず ⚫ onScrollStateChanged
が LazyColumn に存在しない? ⚫ おそらくRecyclerViewのメソッド
Github Copilot で生成したコード 21
ここまでの感想 22 ⚫ Gemini のコード生成が速い & 正常にビルドできる! ⚫ Github Copilot
との棲み分けが今後どうなるか気になる
Gemini in Android Studio を社内で使う場合 23 プロダクトのコードを Gemini サーバに送信するのは セキュリティ的に良くないかも
Gemini in Android Studio を社内で使う場合 24 ⚫ 学習に利用されないように Do not
use context from any project に設定する
Gemini in Android Studio を社内で使う場合 25 ⚫ .aiexclude をプロジェクトに追加して学習に使わせないようにする
Gemini in Android Studio を社内で使う場合 26 ⚫ コード分析など一部の機能では Gemini サーバへ送信するか聞かれるので注意
Gemini in Android Studio を社内で使う場合 27 プロダクトコードだとを最大限活用するのは厳しそう... サーバに送信しない方法で何かに利用できないかな
Gemini in Android Studio を社内で使う場合 28 ▪ Kotlin化の推進 ⚫ Javaのソースコードを
Kotlin へ変換する ⚫ 既存機能でもあるが、複雑なロジックを変換するのに便利かも ⚫ (逆に Kotlin から Java へ変換することもできた)
Gemini in Android Studio を社内で使う場合 29 ▪ Jetpack Compose化の推進 ⚫
AndroidView (.xml) で書かれたコードを Jetpack Compose へ変換する ⚫ ConstraintLayout も Column などに変換できた
まとめ 30 ⚫ コード生成の速さ・正確さは Github Copilot より良さそう ⚫ 社内で使用する場合は学習に使われないように設定しておくこと ⚫
新規コード生成だけでなく Kotlin化 や Jetpack Compose化 に活用できそう
ご清聴ありがとうございました