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

小鳥の愛し方~Kotlin in action~

小鳥の愛し方~Kotlin in action~

Kotlinの言語仕様、文法、特筆すべき点などをまとめて社内勉強会で発表した資料

yu mitsuhori

December 22, 2017
Tweet

More Decks by yu mitsuhori

Other Decks in Technology

Transcript

  1. .5*$POGJEFOUJBM ΞδΣϯμ   ࣗݾ঺հ  ,PUMJOͱ͸  ؆ܿͳจ๏ 

    /VMMͷऔΓѻ͍  +BWBͱͷޓ׵ੑ  2$%తͳ࿩  ·ͱΊ
  2. .5*$POGJEFOUJBM ΞδΣϯμ   ࣗݾ঺հ  ,PUMJOͱ͸  ؆ܿͳจ๏ 

    /VMMͷऔΓѻ͍  +BWBͱͷޓ׵ੑ  2$%తͳ࿩  ·ͱΊ
  3. .5*$POGJEFOUJBM • ৽ଔҰ೥໨ • େֶ࣌୅͸ׂͱ8FCدΓ 3VCZPO3BJMT ଞʹ΋+BWB $ +BWB4DSJQU 

    ૣظͰ4XJGU • झຯɿμʔπ • ࠷ۙϋϚ͍ͬͯΔ͜ͱ #JU$PJOτϨʔυ ͦͷ͏ͪࣗಈऔҾ#PUΛ࣮૷༧ఆ  ࣗݾ঺հ ࡾງ ༟ Έͭ΄Γ Ώ͏
  4. .5*$POGJEFOUJBM ΞδΣϯμ   ࣗݾ঺հ  ,PUMJOͱ͸  ؆ܿͳจ๏ 

    /VMMͷऔΓѻ͍  +BWBͱͷޓ׵ੑ  2$%తͳ࿩  ·ͱΊ
  5. .5*$POGJEFOUJBM w +FU#SBJOT͕ࣾ։ൃͨ͠+7. +BWB7JSUVBM.BDIJOF ্ Ͱಈ࡞͢Δ൚༻ݴޠ w ೥(PPHMF*0Ͱ"OESPJE։ൃެࣜݴޠͱͯ͠ೝ ఆ w

    "OESPJE։ൃऀͷதͰ͸ʮখௗʯͱ͍͏ѪশͰ਌͠· ΕͨΓ΋͍ͯ͠Δʢ˞໊લͷ༝དྷ͸ϑΟϯϥϯυͷ ίτϦϯౡʣ w ҆શ /VMM εϨου ɺ+BWBͱͷ૬ޓӡ༻ੑɺ࣮༻ओ ٛ  ,PUMJOͷ֓ཁ
  6. .5*$POGJEFOUJBM  ,PUMJOͷ࣮ߦ؀ڥ LU KBWB ,PUMJO ίϯύΠϥ KBWB ίϯύΠϥ DMBTT

    KBS LPUMJO ϥϯλΠϜ ΞϓϦέʔγϣϯ ,PUMJOಠࣗͷඪ ४ϥΠϒϥϦ ,#΄ͲΒ͠ ͍
  7. .5*$POGJEFOUJBM w *OUFMJ+ *%&" +FU#SBJOT͕ࣾ࡞͍ͬͯΔ*%& ଞͷ+7.ݴޠ +BWB 4DBMB (SPPWZ Λ࢖ͬͨ։ൃ͕Ͱ͖Δ؀ڥ͕

    ੔͍ͬͯΔ w "OESPJE4UVEJP "OESPJEͷ։ൃ༻ʹ࡞ΒΕͨ*%&ɻ*OUFMJK *%&"͕ϕʔεͱͳ͍ͬͯ ΔɻϧφͰ΋࢖ͬͯ·͢ w 5SZ,PUMJO 8FCΤσΟλʔɺαϯϓϧίʔυͳͲ΋࣮ߦͰ͖Δ IUUQTUSZLPUMJOMBOHPSH ˡੋඇ͓ࢼ͋͠Εʂ w ΋ͪΖΜίϯύΠϥΛམͱ͖ͯͯ͠ίϚϯυϥΠϯͰ΋ ࣮ߦՄೳ  ,PUMJOΛಈ͔͢ʹ͸
  8. .5*$POGJEFOUJBM ΞδΣϯμ   ࣗݾ঺հ  ,PUMJOͱ͸  ؆ܿͳจ๏ 

    /VMMͷऔΓѻ͍  +BWBͱͷޓ׵ੑ  2$%తͳ࿩  ·ͱΊ
  9. .5*$POGJEFOUJBM Kotlinͷܕ  w ੩తܕ෇͖ݴޠ w ,PUMJOͷܕ͸શͯΦϒδΣΫτ ྫ *OU੔਺ܕ 4USJOHจࣈྻ

    "SSBZ഑ྻ 6OJU,PUMJOʹ͓͚ΔWPJE w +BWBͰ͍͏JOUͷΑ͏ͳϓϦϛςΟϒܕ͸ଘࡏ͠ͳ͍ w શͯͷΦϒδΣΫτ͸"OZΦϒδΣΫτΛܧঝͯ͠ ͍Δ
  10. .5*$POGJEFOUJBM w σʔλΛอ࣋͢ΔΫϥε w ҎԼͷϝιουΛࣗಈੜ੒ͯ͘͠ΕΔ  UP4USJOH શͯͷϑΟʔϧυΛએݴॱʹฒ΂ͨจࣈྻදݱΛੜ ੒͢Δ 

    FRVBMT Πϯελϯεͷൺֱ  IBTIDPEF )BTI.BQͳͲͷϋογϡϕʔεͷίϯςφͷΩʔ ͱͯ͠࢖ΘΕΔIBTIDPEF  %BUB$MBTT EBUBΛ͚ͭΔ ϓϥΠϚϦίϯετϥΫλ͕ඞਢ
  11. .5*$POGJEFOUJBM ΞδΣϯμ   ࣗݾ঺հ  ,PUMJOͱ͸  ؆ܿͳจ๏ 

    /VMMͷऔΓѻ͍  +BWBͱͷޓ׵ੑ  2$%తͳ࿩  ·ͱΊ
  12. .5*$POGJEFOUJBM w JGͰ΍Γա͢͝ w ҆શݺͼग़͠ԋࢉࢠ  w ΤϧϏεԋࢉࢠ  w

    ҆શΩϟετ BT w ඇOVMMද໌  w MFUؔ਺  /VMMͰ͋Δ͔ͷνΣοΫ๏ Null許容型はnullでないことを確認してから呼び出す必要が ある
  13. .5*$POGJEFOUJBM ΞδΣϯμ   ࣗݾ঺հ  ,PUMJOͱ͸  ؆ܿͳจ๏ 

    /VMMͷऔΓѻ͍  +BWBͱͷޓ׵ੑ  2$%తͳ࿩  ·ͱΊ
  14. .5*$POGJEFOUJBM ΞδΣϯμ   ࣗݾ঺հ  ,PUMJOͱ͸  ؆ܿͳจ๏ 

    /VMMͷऔΓѻ͍  +BWBͱͷޓ׵ੑ  2$%తͳ࿩  ·ͱΊ
  15. .5*$POGJEFOUJBM ΞδΣϯμ   ࣗݾ঺հ  ,PUMJOͱ͸  ؆ܿͳจ๏ 

    /VMMͷऔΓѻ͍  +BWBͱͷޓ׵ੑ  2$%తͳ࿩  ·ͱΊ