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
790
Gemini in Android Studio 使ってますか?
satoryo56
June 25, 2024
Tweet
Share
More Decks by satoryo56
See All by satoryo56
STORES Tech Conf 2024 “New Engineering” - 複数のScrollViewが連動!STORES レジ でスプレッドシート風UIを実装しました
satoryo56
0
1.2k
Other Decks in Education
See All in Education
諸外国の理科カリキュラムにおけるビッグアイデアの構造比較
arumakan
0
210
日本電子専門学校ネットワークセキュリティ科_学科紹介.pdf
ccyc
0
850
自己紹介 / who-am-i
yasulab
PRO
2
4.9k
Juvenile in Justice
oripsolob
0
520
Data Presentation - Lecture 5 - Information Visualisation (4019538FNR)
signer
PRO
0
2.4k
論文紹介のやり方 / How to review
kaityo256
PRO
15
80k
Tangible, Embedded and Embodied Interaction - Lecture 7 - Next Generation User Interfaces (4018166FNR)
signer
PRO
0
1.6k
Policing the Poor
oripsolob
0
440
著作権と授業に関する出前講習会/dme-2025-05-01
gnutar
0
180
Virtual and Augmented Reality - Lecture 8 - Next Generation User Interfaces (4018166FNR)
signer
PRO
0
1.6k
環境・社会理工学院 建築学系 大学院入試について|Science Tokyo(東京科学大学)
sciencetokyo
PRO
0
1k
CV_1_Introduction
hachama
0
240
Featured
See All Featured
The Language of Interfaces
destraynor
157
25k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
12k
Java REST API Framework Comparison - PWX 2021
mraible
31
8.5k
Reflections from 52 weeks, 52 projects
jeffersonlam
349
20k
YesSQL, Process and Tooling at Scale
rocio
172
14k
How to Think Like a Performance Engineer
csswizardry
23
1.6k
For a Future-Friendly Web
brad_frost
177
9.7k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
119
51k
The World Runs on Bad Software
bkeepers
PRO
68
11k
Testing 201, or: Great Expectations
jmmastey
42
7.5k
Optimising Largest Contentful Paint
csswizardry
37
3.2k
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化 に活用できそう
ご清聴ありがとうございました