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
頑張ってKotlin率をちょっとあげた話
Search
みっちゃん
March 14, 2023
Programming
240
0
Share
頑張ってKotlin率をちょっとあげた話
Ebisu.mobile #1 にて登壇
https://hey.connpass.com/event/276211/
みっちゃん
March 14, 2023
More Decks by みっちゃん
See All by みっちゃん
Do you use git worktree?
mitchan
0
110
Android値受け渡し大全 〜 設計を制する者が「渡す」を制す 〜
mitchan
1
7k
2024年にチャレンジしたことを振り返るぞ
mitchan
0
290
DroidKaigi初めて登壇したレポ
mitchan
1
230
実践!難読化ガイド
mitchan
0
3.8k
「実践!難読化ガイド」事前予告編
mitchan
0
310
画面遷移 〜iOSとAndroid〜
mitchan
0
390
パソコン音痴な私がモバイル開発界隈でぬくぬく成長している理由
mitchan
0
570
ドキュメントから adbコマンドの仕組みを読み解く
mitchan
1
370
Other Decks in Programming
See All in Programming
JAWS-UG横浜 #100 祝・第100回スペシャルAWS は VPC レスの時代へ
maroon1st
0
150
YJITとZJITにはイカなる違いがあるのか?
nakiym
0
220
t *testing.T は どこからやってくるの?
otakakot
1
680
PCOVから学ぶコードカバレッジ #phpcon_odawara
o0h
PRO
0
270
Coding as Prompting Since 2025
ragingwind
0
840
Claude Codeをカスタムして自分だけのClaude Codeを作ろう
terisuke
0
140
Liberating Ruby's Parser from Lexer Hacks
ydah
2
1.4k
TiDBのアーキテクチャから学ぶ分散システム入門 〜MySQL互換のNewSQLは何を解決するのか〜 / tidb-architecture-study
dznbk
1
180
AIベース静的検査器の偽陽性率を抑える工夫3選
orgachem
PRO
3
330
Back to the roots of date
jinroq
0
250
レガシーPHP転生 〜父がドメインエキスパートだったのでDDD+Claude Codeでチート開発します〜
panda_program
0
990
ソフトウェア設計の結合バランス #phperkaigi
kajitack
0
140
Featured
See All Featured
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.4k
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
0
1.2k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
25k
Are puppies a ranking factor?
jonoalderson
1
3.3k
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
230
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4k
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
130
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
We Have a Design System, Now What?
morganepeng
55
8.1k
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
340
Odyssey Design
rkendrick25
PRO
2
580
Transcript
頑張ってKotlin率をちょっとあげた話 登壇者:STORES 決済 Androidチーム みっちゃん 1
自己紹介 名前:みっちゃん 会社:STORES inc.(22卒) 役職:Androidエンジニア Twitter Qiita 2
2022年 下期 「Kotlin化率20%向上」という目標を掲げ、 我々Androidチームは新機能開発と両立しながら頑張りました!! どのようにKotlin化を進め、どれくらいKotlin率が上がったのかというお話し。 3
進め方 <3フェーズ構成> Javaのままリファクタリング ↓ Convert to Kotlin by AndroidStudio ↓
Kotlin化後のリファクタリング 4
進め方 feature/convert-to-kotlin-2022 ー feature/convert-to-kotlin-HogeHogeActivity ー feature/refactoring-java-HogeHogeActivity ー feature/convert-to-kotlin-by-AS-HogeHogeActivity ー feature/refactoring-kotlin-HogeHogeActivity
5
フェーズ1:Javaのままリファクタリング ▷ Kotlin化するにあたりJavaっぽい部分をなくす 例 • ヨーダ記法にGoodbyeする • prefixの”m”を消す 6
フェーズ2:Convert to Kotlin by AndroidStudio ▷ ボタンぽちぽちで自動convertするだけ! Kotlin化したいJavaファイルのタブ上で右クリックする 7
フェーズ3:Kotlin化後のリファクタリング ▷ 自動convertによってエラーが出ている部分はエラーを解消します ▷ Kotlinっぽいコードになるように綺麗にします (例) • else if 地獄をwhenでスッキリ
• スコープ関数を使ってスッキリ • nullabilityの改善(ex. 強制アンラップ!!を解消) • Android KTXを使ってよりKotlinらしいコードに • などなど... 8
else if 地獄をwhenでスッキリ 9
スコープ関数を使ってスッキリ 10
最終結果 下期だけで + 12%。年間だと + 20% 11
〜おわり〜 12