$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Kotlin Compiler Plugin 入門
Search
tommykw
May 19, 2021
Programming
0
91
Kotlin Compiler Plugin 入門
tommykw
May 19, 2021
Tweet
Share
More Decks by tommykw
See All by tommykw
ポートフォリオを作る
tommykw
0
150
Kotlin Compiler Plugin のワークフローを知る
tommykw
1
2.2k
コネヒトの健全性を支えるGithub Actionsの事例紹介
tommykw
0
1.9k
スクラムガイドの理解を深めるためのeduScrumガイド
tommykw
0
1.7k
改めて学ぶContracts
tommykw
10
7k
Kotlinの短絡評価について
tommykw
0
470
初めてのKotlinコントリビュート
tommykw
1
720
Kotlin Issueを投げてみよう!
tommykw
0
3.4k
AndroidのタグView作り
tommykw
0
3k
Other Decks in Programming
See All in Programming
バックエンドエンジニアによる Amebaブログ K8s 基盤への CronJobの導入・運用経験
sunabig
0
150
How Software Deployment tools have changed in the past 20 years
geshan
0
29k
関数実行の裏側では何が起きているのか?
minop1205
1
690
エディターってAIで操作できるんだぜ
kis9a
0
720
Context is King? 〜Verifiability時代とコンテキスト設計 / Beyond "Context is King"
rkaga
9
1.1k
LLMで複雑な検索条件アセットから脱却する!! 生成的検索インタフェースの設計論
po3rin
2
690
開発に寄りそう自動テストの実現
goyoki
1
900
DevFest Android in Korea 2025 - 개발자 커뮤니티를 통해 얻는 가치
wisemuji
0
130
【CA.ai #3】ワークフローから見直すAIエージェント — 必要な場面と“選ばない”判断
satoaoaka
0
240
AIコードレビューがチームの"文脈"を 読めるようになるまで
marutaku
0
350
Building AI Agents with TypeScript #TSKaigiHokuriku
izumin5210
6
1.3k
20251212 AI 時代的 Legacy Code 營救術 2025 WebConf
mouson
0
110
Featured
See All Featured
Visualization
eitanlees
150
16k
Site-Speed That Sticks
csswizardry
13
1k
RailsConf 2023
tenderlove
30
1.3k
Building Applications with DynamoDB
mza
96
6.8k
Bash Introduction
62gerente
615
210k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.6k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.6k
BBQ
matthewcrist
89
9.9k
Making Projects Easy
brettharned
120
6.5k
We Have a Design System, Now What?
morganepeng
54
7.9k
Rebuilding a faster, lazier Slack
samanthasiow
84
9.3k
Unsuck your backbone
ammeep
671
58k
Transcript
,PUMJO$PNQJMFS1MVHJOೖ <ίωώτࣾ߹ಉ>3BEJPUBML5FDI5BML"OESPJE !UPNNZLX
͡Ίʹ
ࠓ͢͜ͱ w ,PUMJO$PNQJMFS1MVHJOͱʁ w ,PUMJO$PNQJMFS1MVHJOͷར༻έʔε w ,PUMJO$PNQJMFS1MVHJOͷΈ w ,PUMJO$PNQJMFS1MVHJOͷςετ w
·ͱΊ
ࣗݾհ ίωώτגࣜձࣾ"OEPSJEΤϯδχΞ (JUIVC 5XJUUFSɿ!UPNNZLX ా݈ೋ
,PUMJO$PNQJMFS1MVHJOͱʁ
ͦͦɺ,PUMJO$PNQJMFS1MVHJOͱʁ w όΠτίʔυΛ্ॻ͖Ͱ͖Δ w ίʔυهड़ͷࣗಈԽ͕Ͱ͖Δ w ,BQUͰΘΕ͍ͯΔ w ·ͩ҆ఆ൛Ͱͳ͍ w
υΩϡϝϯτ͕ͳ͍
ͦͦɺ,PUMJO$PNQJMFS1MVHJOͱʁ w όΠτίʔυΛ্ॻ͖Ͱ͖Δ w ίʔυهड़ͷࣗಈԽ͕Ͱ͖Δ w ,BQUͰΘΕ͍ͯΔɺ$PNQPTFͰར༻͞Ε͍ͯΔ w ·ͩ҆ఆ൛Ͱͳ͍ w
υΩϡϝϯτ͕ͳ͍ ͋·ΓΑ͘Θ͔Βͳ͍ͳ😅
ࠓ͢͜ͱ w ,PUMJO$PNQJMFS1MVHJOͱʁ w ,PUMJO$PNQJMFS1MVHJOͷར༻έʔε w ,PUMJO$PNQJMFS1MVHJOͷΈ w ,PUMJO$PNQJMFS1MVHJOͷςετ w
·ͱΊ
,PUMJO$PNQJMFS1MVHJOͷར༻έʔε
ར༻έʔεΛجʹཧղΛਂΊΔ w +FUQBDL$PNQPTF w BBGBOBTFWTFLSFU w "INFE.PVSBEOPDPQZ
ར༻έʔεΛجʹཧղΛਂΊΔ w +FUQBDL$PNQPTF w !$PNQPTBCMFͰར༻͞Ε͍ͯΔ w BBGBOBTFWTFLSFU w "INFE.PVSBEOPDPQZ
ར༻έʔεΛجʹཧղΛਂΊΔ w +FUQBDL$PNQPTF w !$PNQPTBCMFͰར༻͞Ε͍ͯΔ w BBGBOBTFWTFLSFU w UP4USJOH ͷ༰Λॻ͖͑Δ
w "INFE.PVSBEOPDPQZ w DPQZ Λআ͢Δ
BBGBOBTFWTFLSFUͷར༻
BBGBOBTFWTFLSFUͷར༻ password͕දࣔ͞ΕΔ
BBGBOBTFWTFLSFUͷར༻
BBGBOBTFWTFLSFUͷར༻ password͕ృΓͭͿ͞ Ε͍ͯΔ
ར༻έʔεΛجʹཧղΛਂΊΔ w +FUQBDL$PNQPTF w !$PNQPTBCMFͰར༻͞Ε͍ͯΔ w BBGBOBTFWTFLSFU w UP4USJOH Λॻ͖͍͑ͯΔ
w "INFE.PVSBEOPDPQZ w DPQZ Λআ͍ͯ͠Δ
"INFE.PVSBEOPDPQZͷར༻
"INFE.PVSBEOPDPQZͷར༻ pass͕දࣔ͞ΕΔ
"INFE.PVSBEOPDPQZͷར༻
"INFE.PVSBEOPDPQZͷར༻ copy()͕আ͞Εͨ݁ ՌΤϥʔͱͳΔ
͜͜·ͰΛ౿·͑ͯɺ,PUMJO$PNQJMFS1MVHJOͱʁ w όΠτίʔυΛ্ॻ͖Ͱ͖Δ w طଘͷػೳΛฤूͰ͖Δ w ྫ͑ɺUP4USJOH ɺDPQZ ͳͲΛฤूͰ͖ͨ w
ίʔυهड़ͷࣗಈԽ͕Ͱ͖Δ w ΞϊςʔγϣϯͳͲΛτϦΨʔʹͯ͠࠶ར༻Մೳ w ,BQUͰΘΕ͍ͯΔ w ·ͩ҆ఆ൛Ͱͳ͍ w υΩϡϝϯτ͕ͳ͍
Ͱ͖Δ͜ͱͷΠϝʔδͰ͖·ͨ͠ʁ w όΠτίʔυΛ্ॻ͖Ͱ͖Δ w όΠτίʔυΛ্ॻ͖Ͱ͖ΔͷͰɺطଘͷػೳΛฤूͰ͖Δ w UP4USJOH ͳͲ͍͡Δ͜ͱ͕Ͱ͖ͨ w ίʔυهड़ͷࣗಈԽ͕Ͱ͖Δ
w ΞϊςʔγϣϯΛτϦΨʔʹࣗಈԽ͍ͯ͠Δ w ,BQUͰΘΕ͍ͯΔ w ·ͩ҆ఆ൛Ͱͳ͍ w υΩϡϝϯτ͕ͳ͍ ͜ͷຐ๏ͷΑ͏ͳػೳͲΜͳΈʁ🧙
ࠓ͢͜ͱ w ,PUMJO$PNQJMFS1MVHJOͱʁ w ,PUMJO$PNQJMFS1MVHJOͷར༻έʔε w ,PUMJO$PNQJMFS1MVHJOͷΈ w ,PUMJO$PNQJMFS1MVHJOͷςετ w
·ͱΊ
,PUMJO$PNQJMFS1MVHJOͷΈ
,PUMJO$PNQJMFS1MVHJOͷΈ (SBEMF1MVHJO ,PUMJO$PNQJMFS1MVHJO 5SFF7JTJUPS (SBEMF1MVHJO ग़యɿhttps://www.droidcon.com/media-detail?video=481164487
Έɿ(SBEMF1MVHJO w ,PUMJO(SBEMF4VC1MVHJOΛհͯ͠ɺ ,PUMJO$PNQJMFS1MVHJOΛݺͼग़͢ ग़యɿhttps://www.droidcon.com/media-detail?video=481164487
Έɿ,PUMJO$PNQJMFS1MVHJO w $PNNBOE-JOF1SPDFTPSɺ $PNQPOFOFU3FHJTUBSΛఆٛ͢Δ w "OBMZTJT)BOEMFS&YUFOTJPOΛհͯ͠ ίʔυղੳ͢ΔͨΊͷ5SFF7JTJUPSΛ ݺͼग़͢ w ղੳͨ͠༰Λҙͷܗࣜʹมߋ͠ɺ
$PMMFDUJPO,U'JMFͱͯ͢͠ ग़యɿhttps://www.droidcon.com/media-detail?video=481164487
Έɿ5SFF7JTJUPS w ࣮ߦ͞ΕͨίʔυͷϑΝΠϧɺΫϥ εɺϓϩύςΟɺؔΛղੳͰ͖Δ ग़యɿhttps://www.droidcon.com/media-detail?video=481164487
Έɿ(SBEMF w ՌΛൃߦ͢Δ ग़యɿhttps://www.droidcon.com/media-detail?video=481164487
αϯϓϧίʔυ w IUUQTHJUIVCDPNUPNNZLXLPUMJODPNQJMFSQMVHJOTBNQMF w !)FMMP8PSMEΞϊςʔγϣϯΛτϦΨʔʹɺ)FMMP8PSMEΛग़ྗ͢ ΔαϯϓϧϓϥάΠϯ
αϯϓϧίʔυ(SBEMF1MVHJO ग़యɿhttps://www.droidcon.com/media-detail?video=481164487
αϯϓϧίʔυ(SBEMF1MVHJO KotlinGradleSubPlugin Λఆٛ͢Δ ग़యɿhttps://www.droidcon.com/media-detail?video=481164487
αϯϓϧίʔυ,PUMJO$PNQJMFS1MVHJO ग़యɿhttps://www.droidcon.com/media-detail?video=481164487
αϯϓϧίʔυ,PUMJO$PNQJMFS1MVHJO CommandLineProcesso rΛఆٛ͢Δ ग़యɿhttps://www.droidcon.com/media-detail?video=481164487
αϯϓϧίʔυ,PUMJO$PNQJMFS1MVHJO ग़యɿhttps://www.droidcon.com/media-detail?video=481164487
αϯϓϧίʔυ,PUMJO$PNQJMFS1MVHJO ComponentResitrarΛఆ ٛ͢Δ ग़యɿhttps://www.droidcon.com/media-detail?video=481164487
αϯϓϧίʔυ,PUMJO$PNQJMFS1MVHJO ग़యɿhttps://www.droidcon.com/media-detail?video=481164487
αϯϓϧίʔυ,PUMJO$PNQJMFS1MVHJO ೖྗίʔυΛղੳ͠ɺ ҙͷίʔυʹஔ͖͑Δ ग़యɿhttps://www.droidcon.com/media-detail?video=481164487
αϯϓϧίʔυ,PUMJO$PNQJMFS1MVHJO ೖྗίʔυΛղੳ͠ɺ ҙͷίʔυʹஔ͖͑Δ ஔ͖͍͑ͨɺKtFileΛ ࡞͢Δ ग़యɿhttps://www.droidcon.com/media-detail?video=481164487
αϯϓϧίʔυ5SFF7JTJUPS ग़యɿhttps://www.droidcon.com/media-detail?video=481164487
αϯϓϧίʔυ5SFF7JTJUPS @HelloWorld͕ଘࡏ͢Δ ͔νΣοΫ͢Δ ग़యɿhttps://www.droidcon.com/media-detail?video=481164487
αϯϓϧίʔυ5SFF7JTJUPS @HelloWorld͕ଘࡏ͢Δ ͔νΣοΫ͢Δ @HelloWorld͕͋Ε println(“Hello Worold”)Λૠೖ ͢Δ ग़యɿhttps://www.droidcon.com/media-detail?video=481164487
αϯϓϧίʔυ࣮ߦ݁Ռ
αϯϓϧίʔυ࣮ߦ݁Ռ @HelloWorldΞϊςʔγϣϯΛఆ ٛͯ͠ɺmain()Λ࣮ߦ͢Δ
αϯϓϧίʔυ࣮ߦ݁Ռ ࣮ߦ݁Ռͱͯ͠ɺHello World͕දࣔ͞ΕΔ @HelloWorldΞϊςʔγϣϯΛఆ ٛͯ͠ɺmain()Λ࣮ߦ͢Δ
ࠓ͢͜ͱ w ,PUMJO$PNQJMFS1MVHJOͱʁ w ,PUMJO$PNQJMFS1MVHJOͷར༻έʔε w ,PUMJO$PNQJMFS1MVHJOͷΈ w ,PUMJO$PNQJMFS1MVHJOͷςετ w
·ͱΊ
,PUMJO$PNQJMFS1MVHJOͷςετ
LPUMJODPNQJMFUFTUJOHϥΠϒϥϦΛ͏ w IUUQTHJUIVCDPNUTDIVDIPSUEFWLPUMJODPNQJMFUFTUJOH w ,PUMJO+BWBίʔυΛίϯύΠϧ͢ΔϥΠϒϥϦ
LPUMJODPNQJMFUFTUJOHϥΠϒϥϦΛ͏
LPUMJODPNQJMFUFTUJOHϥΠϒϥϦΛ͏ @NoCopy͕͋Εcopy() Λআ͢Δςετ
LPUMJODPNQJMFUFTUJOHϥΠϒϥϦΛ͏ @NoCopy͕͋Εcopy() Λআ͢Δςετ ίϯύΠϧ༻ͷKotlinϑΝΠ ϧΛੜ͠ɺίϯύΠϧ͢ Δ
LPUMJODPNQJMFUFTUJOHϥΠϒϥϦΛ͏ @NoCopy͕͋Εcopy() Λআ͢Δςετ ίϯύΠϧ༻ͷKotlinϑΝΠ ϧΛੜ͠ɺίϯύΠϧ͢ Δ ίϯύΠϧ݁ՌΛνΣοΫ ͢Δ
LPUMJODPNQJMFUFTUJOHͷDPNQJMF ͷεςοϓ w ελϒΛੜ͢Δ w BQUΛ࣮ߦ͢Δ w ,PUMJO+BWBιʔεΛίϯύΠϧ͢Δ
·ͱΊ
·ͱΊ w ,PUMJOϩʔυϚοϓʹهࡌͷ௨Γɺ,PUMJO$PNQJMFS1MVHJO҆ఆ൛ ʹ͚ͯ։ൃத w ΞϯυΩϡϝϯτͳͷͰ։ൃख୳Γ😢 w ࡞ϫʔΫϑϩʔςετͳͲશମͷྲྀΕΛհ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ