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とJavaの相互運用
Search
tommykw
July 12, 2017
0
3.7k
KotlinとJavaの相互運用
tommykw
July 12, 2017
Tweet
Share
More Decks by tommykw
See All by tommykw
ポートフォリオを作る
tommykw
0
150
Kotlin Compiler Plugin 入門
tommykw
0
86
Kotlin Compiler Plugin のワークフローを知る
tommykw
1
2.2k
コネヒトの健全性を支えるGithub Actionsの事例紹介
tommykw
0
1.9k
スクラムガイドの理解を深めるためのeduScrumガイド
tommykw
0
1.7k
改めて学ぶContracts
tommykw
10
6.9k
Kotlinの短絡評価について
tommykw
0
440
初めてのKotlinコントリビュート
tommykw
1
700
Kotlin Issueを投げてみよう!
tommykw
0
3.3k
Featured
See All Featured
How to Ace a Technical Interview
jacobian
279
23k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
139
34k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
30
9.6k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.1k
Facilitating Awesome Meetings
lara
55
6.5k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
61k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
285
13k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
8
520
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
31
2.2k
Typedesign – Prime Four
hannesfritz
42
2.8k
Writing Fast Ruby
sferik
628
62k
Transcript
ՈͷຖΛͬͱসإʹɻ ,PUMJOͱ+BWBͷ૬ޓӡ༻ ίωώτגࣜձࣾ
ా݈ೋ !UPNNZLX !UPNNZLX ίωώτגࣜձࣾ"OESPJE&OHJOFFS ϓϩϑΟʔϧ
͢༰ w ϚϚϦͷ,PUMJOಋೖ w ,PUMJOͱ+BWBͷ૬ޓӡ༻ w ࠷ޙʹ
ՈͷຖΛͬͱসإʹɻ ϚϚϦͷ,PUMJOಋೖ ίωώτגࣜձࣾ
ϚϚϦ2
ϚϚϦ2
ϚϚϦ2
,PUMJOಋೖ w +BWBͩͱɺෳࡶʹͳΔίʔυ͖ͬ͢ΓՄಡੑ্͕͕Δ w 4XJGU͍ͷJ04ΤϯδχΞʹͳ͡Έ͍͢จ๏ w +BWBͷ/VMM1PJOUFS&YDFQUJPOΛۦஞͰ͖Δ w σϝϦοτ͕গͳ͔ͬͨ ͳͥ,PUMJOΛಋೖͨ͠ͷ͔
,PUMJOಋೖ w ແཧʹ,PUMJOԽ͠ͳ͍ w ϦϑΝΫλϦϯά৽ػೳΛ࣮͢Δࡍʹ,PUMJOԽΛ͢Δ w ςετ,PUMJOͰॻ͍ͯΈΔ ,PUMJOಋೖํ
,PUMJOಋೖ w ݄͔Βελʔτͯ͠ಋೖྃ w ׂ͘Β͍ίʔυߦ͕ݮͬͨ w ؆ܿʹهड़Ͱ͖ΔΑ͏ʹͳͬͨ w ϒϩάΛ௨ͯ͡ೝ্͕͕ͬͨ ,PUMJOಋೖ݁Ռ
ՈͷຖΛͬͱসإʹɻ ,PUMJOͱ+BWBͷ૬ޓӡ༻ ίωώτגࣜձࣾ
,PUMJOͱ+BWBͷ૬ޓӡ༻ w 1MBUGPSN5ZQF w .BQQFE5ZQF w σϑΥϧτpOBMDMBTT w ݕࠪྫ֎ w
υΩϡϝϯτ ,PUMJOͱ+BWBͷ૬ޓӡ༻
ՈͷຖΛͬͱসإʹɻ 1MBUGPSN5ZQF ίωώτגࣜձࣾ
1MBUGPSN5ZQF w 5Λද͢ w /VMM҆શͱݴΘΕ͍ͯΔ͕ɺ+BWBͱ,PUMJOͷ߹আ͘ w /VMM1PJOUFS&YDFQUJPOɺ*MMFHBM4UBUF&YDFQUJPO͕ൃੜ͠Ϋϥογϡ͢Δ w +BWBͰΞϊςʔγϣϯΛఆٛ 1MBUGPSN5ZQFʹ͍ͭͯ
1MBUGPSN5ZQF Ϋϥογϡ͢Δέʔε
1MBUGPSN5ZQF Ϋϥογϡ͢Δέʔε
1MBUGPSN5ZQF !/VMMBCMFΛ໌ࣔతʹఆٛ
1MBUGPSN5ZQF !/VMMBCMFΛ໌ࣔతʹఆٛ
1MBUGPSN5ZQF w +BWBଆͰ!/VMMBCMFͱ!/PO/VMMΛఆٛ͢Δ w ڥքΛҙࣝ͢Δ w ؆୯ʹΫϥογϡͯ͠͠·͏ͷͰҙ͢Δ w έʔεΘ͔Βͳ͍͕Ұ෦*%&"ͰܯࠂΛදࣔ͢Δ 1MBUGPSN5ZQF·ͱΊ
ՈͷຖΛͬͱসإʹɻ .BQQFE5ZQF ίωώτגࣜձࣾ
.BQQFEUZQF w ,PUMJOͱ+BWBͷͦΕͧΕͷܕϚοϐϯά w 1MBUGPSN5ZQFɺOVMMBCMFɺ,PUMJOݻ༗ͷܕʹϚοϐϯά w .BQQFE5ZQFͱ1MBUGPSN5ZQFͷ3ZPUB.VSPIPTIJ͞Μͷهࣄ͕ͱͯࢀߟʹͳΔ .BQQFE5ZQFʹ͍ͭͯ
.BQQFEUZQF .BQQFE5ZQF
.BQQFEUZQF .BQQFE5ZQF
.BQQFEUZQF .BQQFE5ZQF
.BQQFEUZQF w ,PUMJOͰ+BWBͷܕΛಛผʹѻ͏ w !/VMMBCMFɺ!/PU/VMMΛ͏ w 1MBUGPSN5ZQFΛ೦಄ʹஔ͖ͭͭ.BQQFE5ZQFΛҙࣝ͢Δ .BQQFE5ZQF·ͱΊ
ՈͷຖΛͬͱসإʹɻ σϑΥϧτpOBMDMBTT ίωώτגࣜձࣾ
σϑΥϧτpOBMDMBTT w ,PUMJOͷΫϥεσϑΥϧτpOBM w +BWBͱҟͳΓɺܧঝ͢Δ߹ʹPQFOΛ͚ͭΔ w Ұ෦͑ͳ͍ϥΠϒϥϦ͕͋Δ w 3FBMNɺ.PDLJUPɺ4QSJOHͳͲ σϑΥϧτpOBMDMBTTʹ͍ͭͯ
σϑΥϧτpOBMDMBTT 3FBMN
σϑΥϧτpOBMDMBTT 3FBMN
σϑΥϧτpOBMDMBTT w NPDLJUPWFSTJPOLPUMJOBMMPQFOΛ͏ w NPDLJUPWFSTJPO͔ΒJOMJOFNPDLNBLFSΛ༗ޮʹ͢Δ .PDLJUP
σϑΥϧτpOBMDMBTT .PDLJUP
σϑΥϧτpOBMDMBTT .PDLJUP
σϑΥϧτpOBMDMBTT w ඞཁͰ͋ΕదٓPQFOΛ͚͍ͭͯ͘ w LPUMJOBMMPQFOPQFOΛ༩ͯ͘͠ΕΔϓϥάΠϯΛ͏ σϑΥϧτpOBMDMBTT·ͱΊ
ՈͷຖΛͬͱসإʹɻ ݕࠪྫ֎ ίωώτגࣜձࣾ
ݕࠪྫ֎ w ,PUMJOଆͰ!5ISPXTΛఆٛ͢Δ w *%&"ͰܯࠂΛදࣔ͠ɺΫΠοΫϑΟοΫε͕Ͱ͖Δ w +BWB͔Β,PUMJOͰΫΠοΫϑΟοΫε͕ޮ͔ͳ͍ ݕࠪྫ֎ʹ͍ͭͯ
ݕࠪྫ֎ ,PUMJO+BWB
ݕࠪྫ֎ ,PUMJO+BWB
ݕࠪྫ֎ ,PUMJO+BWB
ݕࠪྫ֎ +BWB,PUMJO
ݕࠪྫ֎ +BWB,PUMJO
ݕࠪྫ֎ w ,PUMJOଆͰ!5ISPXTΛఆٛ͢Δ w +BWB͔Β,PUMJOΛݺͼग़࣌͢ʹྑ͍ํ๏ͳ͍ͩΖ͏͔ w ڥքઢΛҙࣝ͢Δ ݕࠪྫ֎·ͱΊ
ՈͷຖΛͬͱসإʹɻ υΩϡϝϯτ ίωώτגࣜձࣾ
υΩϡϝϯτ w ίϝϯτͷॻ͕ࣜ౷ҰͰ͖Δ w ίϝϯτ͕·ͱ·͍ͬͯͯίʔυ͕ಡΈ͍͢ w ίϝϯτॻ͘͜ͱʹΑͬͯಡΈ͍͢ίʔυΛҙࣝͰ͖Δ w υΩϡϝϯτΛੜͰ͖Δ υΩϡϝϯτʹ͍ͭͯ
υΩϡϝϯτ w +BWBͷ+BWBEPDʹ૬͢Δ w ϚʔΫμϯه๏ w +BWBEPDͱඍົʹهड़ํ๏͕ҟͳΔ w λάͷछྨҧ͏ ,%PD
υΩϡϝϯτ w +BWBEPDͱಉ͡ػೳΛ࣋ͭυΩϡϝϯτΤϯδϯ w ίʔυੜ͕Ͱ͖Δ w +BWBͱ,PUMJOͷڞଘϓϩδΣΫτʹରԠͰ͖Δ w WFSTJPO EPLLB
υΩϡϝϯτ w ,%PDೃછΈͷ͋ΔϚʔμμϯͳͷͰॻ͖͍͢ͷͰͳ͍ͩΖ͏͔ w +BWBEPDͱॻ͖ํ͕ଟগҟͳΔ w IUNMʹు͖ग़͢ࡍEPLLBΛ͏ υΩϡϝϯτ·ͱΊ
ՈͷຖΛͬͱসإʹɻ ϝϦοτ͚ͩͰͳ͍ ૬ޓӡ༻ʹ͍ͭͯ ίωώτגࣜձࣾ
ϝϦοτ͚ͩͰͳ͍૬ޓӡ༻ʹ͍ͭͯ ,PUMJOॿຊͰݴٴ͞Ε͍ͯΔ
ϝϦοτ͚ͩͰͳ͍૬ޓӡ༻ʹ͍ͭͯ w ৽͍͠ίʔυΛ,PUMJOʹ͢Δ w ςετ͔Βಋೖ͢Δ w ϥΠϒϥϦʔΛ,PUMJOͰॻ͍ͯಋೖ͢Δ w ஔ͖͑Δ ,PUMJOॿຊͰҎԼͷϝϦοτɺ
σϝϦοτʹ͍ͭͯઆ໌͞Ε͍ͯ·ͨ͠
ϝϦοτ͚ͩͰͳ͍૬ޓӡ༻ʹ͍ͭͯ w ੜ࢈ੑͷߴ͞ w ίϨΫγϣϯͷૢ࡞͕ײతͰָ w ֶशίετͦΕ΄Ͳߴ͘ͳ͍ w *%&"ͷิ͕ڧྗ ૬ޓӡ༻ʹ͓͚Δ
ϓϩδΣΫτಋೖʹΑΔϝϦοτ
ϝϦοτ͚ͩͰͳ͍૬ޓӡ༻ʹ͍ͭͯ w +BWBͱ,PUMJO྆ํΛҙࣝ͢Δඞཁ͕͋Δ w ΫϥεʹΑͬͯ+BWBΑΓίʔυྔ͕ଟ͘ͳΔ࣌͋Δ w ϨϏϡΞʔͷෛ୲ w ,PUMJOԽ͞Εͳ͍෦͕ൃੜͯ͠ϝϯςφϯείετ͕૿େͨ͠ ૬ޓӡ༻ʹ͓͚Δ
ϓϩδΣΫτಋೖʹΑΔσϝϦοτ
ՈͷຖΛͬͱসإʹɻ ࠷ޙʹ ίωώτגࣜձࣾ
͍͞͝ʹ w ৽ن։ൃͰ͋Εϑϧ,PUMJOָ͕ w طଘ։ൃͰ͋Ε૬ޓؔͷਏ͕͋͞Δ w ڥքΛҙࣝ͢Δ ࠷ޙʹ
͍͞͝ʹ w Ҿ͖ଓ͖૬ޓӡ༻ w ͍Ͱݟͯӡ༻͍ͯ͘͠ w ,PUMJOຊମͷίϯτϦϏϡʔτ w *%&"ΛΑΓศརʹ͍͖͍ͬͯͨ ؤுΓ·͢ʂ
ՈͷຖΛͬͱসإʹɻ ίωώτגࣜձࣾ ͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠