Upgrade to Pro — share decks privately, control downloads, hide ads and more …

KotlinとJavaの相互運用

1821636ac95415aa6e84bc33b394283d?s=47 tommykw
July 12, 2017
2.7k

 KotlinとJavaの相互運用

1821636ac95415aa6e84bc33b394283d?s=128

tommykw

July 12, 2017
Tweet

Transcript

  1. Ո଒ͷຖ೔Λ΋ͬͱসإʹɻ ,PUMJOͱ+BWBͷ૬ޓӡ༻ ίωώτגࣜձࣾ

  2. ෋ా݈ೋ !UPNNZLX !UPNNZLX ίωώτגࣜձࣾ"OESPJE&OHJOFFS ϓϩϑΟʔϧ

  3. ࿩͢಺༰ w ϚϚϦͷ,PUMJOಋೖ w ,PUMJOͱ+BWBͷ૬ޓӡ༻ w ࠷ޙʹ

  4. Ո଒ͷຖ೔Λ΋ͬͱসإʹɻ ϚϚϦͷ,PUMJOಋೖ ίωώτגࣜձࣾ

  5. ϚϚϦ2

  6. ϚϚϦ2

  7. ϚϚϦ2

  8. ,PUMJOಋೖ w +BWBͩͱ৑௕ɺෳࡶʹͳΔίʔυ΋͖ͬ͢ΓՄಡੑ্͕͕Δ w 4XJGU࢖͍ͷJ04ΤϯδχΞʹ΋ͳ͡Έ΍͍͢จ๏ w +BWBͷ/VMM1PJOUFS&YDFQUJPOΛۦஞͰ͖Δ w σϝϦοτ͕গͳ͔ͬͨ ͳͥ,PUMJOΛಋೖͨ͠ͷ͔

  9. ,PUMJOಋೖ w ແཧʹ,PUMJOԽ͸͠ͳ͍ w ϦϑΝΫλϦϯά΍৽ػೳΛ࣮૷͢Δࡍʹ,PUMJOԽΛ͢Δ w ςετ͸,PUMJOͰॻ͍ͯΈΔ ,PUMJOಋೖํ਑

  10. ,PUMJOಋೖ w ݄͔Βελʔτͯ͠ಋೖ׬ྃ w ׂ͘Β͍ίʔυߦ਺͕ݮͬͨ w ؆ܿʹهड़Ͱ͖ΔΑ͏ʹͳͬͨ w ϒϩάΛ௨ͯ͡ೝ஌౓্͕͕ͬͨ ,PUMJOಋೖ݁Ռ

  11. Ո଒ͷຖ೔Λ΋ͬͱসإʹɻ ,PUMJOͱ+BWBͷ૬ޓӡ༻ ίωώτגࣜձࣾ

  12. ,PUMJOͱ+BWBͷ૬ޓӡ༻ w 1MBUGPSN5ZQF w .BQQFE5ZQF w σϑΥϧτpOBMDMBTT w ݕࠪྫ֎ w

    υΩϡϝϯτ ,PUMJOͱ+BWBͷ૬ޓӡ༻
  13. Ո଒ͷຖ೔Λ΋ͬͱসإʹɻ 1MBUGPSN5ZQF ίωώτגࣜձࣾ

  14. 1MBUGPSN5ZQF w 5Λද͢ w /VMM҆શͱݴΘΕ͍ͯΔ͕ɺ+BWBͱ,PUMJOͷ৔߹͸আ͘ w /VMM1PJOUFS&YDFQUJPOɺ*MMFHBM4UBUF&YDFQUJPO͕ൃੜ͠Ϋϥογϡ͢Δ w +BWBͰΞϊςʔγϣϯΛఆٛ 1MBUGPSN5ZQFʹ͍ͭͯ

  15. 1MBUGPSN5ZQF Ϋϥογϡ͢Δέʔε

  16. 1MBUGPSN5ZQF Ϋϥογϡ͢Δέʔε

  17. 1MBUGPSN5ZQF !/VMMBCMFΛ໌ࣔతʹఆٛ

  18. 1MBUGPSN5ZQF !/VMMBCMFΛ໌ࣔతʹఆٛ

  19. 1MBUGPSN5ZQF w +BWBଆͰ!/VMMBCMFͱ!/PO/VMMΛఆٛ͢Δ w ڥքΛҙࣝ͢Δ w ؆୯ʹΫϥογϡͯ͠͠·͏ͷͰ஫ҙ͢Δ w έʔε͸Θ͔Βͳ͍͕Ұ෦*%&"ͰܯࠂΛදࣔ͢Δ 1MBUGPSN5ZQF·ͱΊ

  20. Ո଒ͷຖ೔Λ΋ͬͱসإʹɻ .BQQFE5ZQF ίωώτגࣜձࣾ

  21. .BQQFEUZQF w ,PUMJOͱ+BWBͷͦΕͧΕͷܕϚοϐϯά w 1MBUGPSN5ZQFɺOVMMBCMFɺ,PUMJOݻ༗ͷܕʹϚοϐϯά w .BQQFE5ZQFͱ1MBUGPSN5ZQFͷ࿩3ZPUB.VSPIPTIJ͞Μͷهࣄ͕ͱͯ΋ࢀߟʹͳΔ .BQQFE5ZQFʹ͍ͭͯ

  22. .BQQFEUZQF .BQQFE5ZQF

  23. .BQQFEUZQF .BQQFE5ZQF

  24. .BQQFEUZQF .BQQFE5ZQF

  25. .BQQFEUZQF w ,PUMJOͰ͸+BWBͷܕΛಛผʹѻ͏ w !/VMMBCMFɺ!/PU/VMMΛ࢖͏ w 1MBUGPSN5ZQFΛ೦಄ʹஔ͖ͭͭ.BQQFE5ZQFΛҙࣝ͢Δ .BQQFE5ZQF·ͱΊ

  26. Ո଒ͷຖ೔Λ΋ͬͱসإʹɻ σϑΥϧτpOBMDMBTT ίωώτגࣜձࣾ

  27. σϑΥϧτpOBMDMBTT w ,PUMJOͷΫϥε͸σϑΥϧτpOBM w +BWBͱ͸ҟͳΓɺܧঝ͢Δ৔߹ʹPQFOΛ͚ͭΔ w Ұ෦࢖͑ͳ͍ϥΠϒϥϦ͕͋Δ w 3FBMNɺ.PDLJUPɺ4QSJOHͳͲ σϑΥϧτpOBMDMBTTʹ͍ͭͯ

  28. σϑΥϧτpOBMDMBTT 3FBMN

  29. σϑΥϧτpOBMDMBTT 3FBMN

  30. σϑΥϧτpOBMDMBTT w NPDLJUPWFSTJPO͸LPUMJOBMMPQFOΛ࢖͏ w NPDLJUPWFSTJPO͔ΒJOMJOFNPDLNBLFSΛ༗ޮʹ͢Δ .PDLJUP

  31. σϑΥϧτpOBMDMBTT .PDLJUP

  32. σϑΥϧτpOBMDMBTT .PDLJUP

  33. σϑΥϧτpOBMDMBTT w ඞཁͰ͋Ε͹దٓPQFOΛ͚͍ͭͯ͘ w LPUMJOBMMPQFOPQFOΛ෇༩ͯ͘͠ΕΔϓϥάΠϯΛ࢖͏ σϑΥϧτpOBMDMBTT·ͱΊ

  34. Ո଒ͷຖ೔Λ΋ͬͱসإʹɻ ݕࠪྫ֎ ίωώτגࣜձࣾ

  35. ݕࠪྫ֎ w ,PUMJOଆͰ!5ISPXTΛఆٛ͢Δ w *%&"ͰܯࠂΛදࣔ͠ɺΫΠοΫϑΟοΫε͕Ͱ͖Δ w +BWB͔Β,PUMJOͰ͸ΫΠοΫϑΟοΫε͕ޮ͔ͳ͍ ݕࠪྫ֎ʹ͍ͭͯ

  36. ݕࠪྫ֎ ,PUMJO+BWB

  37. ݕࠪྫ֎ ,PUMJO+BWB

  38. ݕࠪྫ֎ ,PUMJO+BWB

  39. ݕࠪྫ֎ +BWB,PUMJO

  40. ݕࠪྫ֎ +BWB,PUMJO

  41. ݕࠪྫ֎ w ,PUMJOଆͰ!5ISPXTΛఆٛ͢Δ w +BWB͔Β,PUMJOΛݺͼग़࣌͢ʹྑ͍ํ๏͸ͳ͍ͩΖ͏͔ w ڥքઢΛҙࣝ͢Δ ݕࠪྫ֎·ͱΊ

  42. Ո଒ͷຖ೔Λ΋ͬͱসإʹɻ υΩϡϝϯτ ίωώτגࣜձࣾ

  43. υΩϡϝϯτ w ίϝϯτͷॻ͕ࣜ౷ҰͰ͖Δ w ίϝϯτ͕·ͱ·͍ͬͯͯίʔυ͕ಡΈ΍͍͢ w ίϝϯτॻ͘͜ͱʹΑͬͯಡΈ΍͍͢ίʔυΛҙࣝͰ͖Δ w υΩϡϝϯτΛੜ੒Ͱ͖Δ υΩϡϝϯτʹ͍ͭͯ

  44. υΩϡϝϯτ w +BWBͷ+BWBEPDʹ૬౰͢Δ w ϚʔΫμ΢ϯه๏ w +BWBEPDͱ͸ඍົʹهड़ํ๏͕ҟͳΔ w λάͷछྨ΋ҧ͏ ,%PD

  45. υΩϡϝϯτ w +BWBEPDͱಉ͡ػೳΛ࣋ͭυΩϡϝϯτΤϯδϯ w ίʔυੜ੒͕Ͱ͖Δ w +BWBͱ,PUMJOͷڞଘϓϩδΣΫτʹରԠͰ͖Δ w WFSTJPO EPLLB

  46. υΩϡϝϯτ w ,%PD͸ೃછΈͷ͋ΔϚʔμμ΢ϯͳͷͰॻ͖΍͍͢ͷͰ͸ͳ͍ͩΖ͏͔ w +BWBEPDͱॻ͖ํ͕ଟগҟͳΔ w IUNMʹు͖ग़͢ࡍ͸EPLLBΛ࢖͏ υΩϡϝϯτ·ͱΊ

  47. Ո଒ͷຖ೔Λ΋ͬͱসإʹɻ ϝϦοτ͚ͩͰ͸ͳ͍ ૬ޓӡ༻ʹ͍ͭͯ ίωώτגࣜձࣾ

  48. ϝϦοτ͚ͩͰ͸ͳ͍૬ޓӡ༻ʹ͍ͭͯ ,PUMJOॿ૸ຊͰ΋ݴٴ͞Ε͍ͯΔ

  49. ϝϦοτ͚ͩͰ͸ͳ͍૬ޓӡ༻ʹ͍ͭͯ w ৽͍͠ίʔυΛ,PUMJOʹ͢Δ w ςετ͔Βಋೖ͢Δ w ϥΠϒϥϦʔΛ,PUMJOͰॻ͍ͯಋೖ͢Δ w ஔ͖׵͑Δ ,PUMJOॿ૸ຊͰ͸ҎԼͷϝϦοτɺ


    σϝϦοτʹ͍ͭͯઆ໌͞Ε͍ͯ·ͨ͠
  50. ϝϦοτ͚ͩͰ͸ͳ͍૬ޓӡ༻ʹ͍ͭͯ w ੜ࢈ੑͷߴ͞ w ίϨΫγϣϯͷૢ࡞͕௚ײతͰָ w ֶशίετ΋ͦΕ΄Ͳߴ͘ͳ͍ w *%&"ͷิ׬͕ڧྗ ૬ޓӡ༻ʹ͓͚Δ

    ϓϩδΣΫτಋೖʹΑΔϝϦοτ
  51. ϝϦοτ͚ͩͰ͸ͳ͍૬ޓӡ༻ʹ͍ͭͯ w +BWBͱ,PUMJO྆ํΛҙࣝ͢Δඞཁ͕͋Δ w ΫϥεʹΑͬͯ͸+BWBΑΓ΋ίʔυྔ͕ଟ͘ͳΔ࣌΋͋Δ w ϨϏϡΞʔͷෛ୲ w ,PUMJOԽ͞Εͳ͍෦෼͕ൃੜͯ͠ϝϯςφϯείετ͕૿େͨ͠ ૬ޓӡ༻ʹ͓͚Δ

    ϓϩδΣΫτಋೖʹΑΔσϝϦοτ
  52. Ո଒ͷຖ೔Λ΋ͬͱসإʹɻ ࠷ޙʹ ίωώτגࣜձࣾ

  53. ͍͞͝ʹ w ৽ن։ൃͰ͋Ε͹ϑϧ,PUMJOָ͕ w طଘ։ൃͰ͋Ε͹૬ޓؔ܎ͷਏ͕͋͞Δ w ڥքΛҙࣝ͢Δ ࠷ޙʹ

  54. ͍͞͝ʹ w Ҿ͖ଓ͖૬ޓӡ༻ w ௕͍໨Ͱݟͯӡ༻͍ͯ͘͠ w ,PUMJOຊମ΁ͷίϯτϦϏϡʔτ w *%&"ΛΑΓศརʹ࢖͍͖͍ͬͯͨ ؤுΓ·͢ʂ

  55. Ո଒ͷຖ೔Λ΋ͬͱসإʹɻ ίωώτגࣜձࣾ ͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠