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

こんな時どう書くの? 逆引きKotlin入門

こんな時どう書くの? 逆引きKotlin入門

2018/5/30 に開催される「Kotlin愛好会 vol1」向けの登壇資料です。
Kotlin初心者の方を対象に、逆引きのreferenceになるようなお話をします。

224e8a32760b146c3184f7451149efca?s=128

Fukui Atsuko

May 30, 2018
Tweet

Transcript

  1. ͜Μͳ࣌Ͳ͏ॻ͘ͷʁ ٯҾ͖Kotlinೖ໳ 2018/5/30 KotlinѪ޷ձ vol1
 Atsuko FUKUI 

  2. Agenda • ࣗݾ঺հ • ຊ೔ͷΰʔϧ • ͜Μͳ࣌Ͳ͏ॻ͘ͷʁٯҾ͖Kotlinೖ໳ • ·ͱΊ 

  3. ࣗݾ঺հ • ෱Ҫರࢠ / Fukui Atsuko • @muumuumuumuu • Android

    Developer • Mercari, Inc. 
  4. ຊ೔ͷΰʔϧ • ؾܰʹKotlinΛॻ͖࢝ΊΒΕΔΑ͏ʹٯҾ͖ͷ ReferenceΛఏڙ͢Δ • Kotlinॳ৺ऀ޲͚Λ૝ఆ • Kotlin͢Ͱʹॻ͖ͳΕ͍ͯΔਓ͸ʮΘ͔Δʯ ʮKotlin͔Θ͍͍ʯͱࢥ͍ͳ͕Βฉ͍͍ͯͯԼ͞ ͍

    • #love_kotlin ͷϋογϡλά͋Γ·͢Αʂ 
  5. ͜Μͳ࣌Ͳ͏ॻ͘ͷʁ ٯҾ͖Kotlinೖ໳

  6. ม਺ͷએݴ(1/3) • val / var म০ࢠͰม਺͕એݴͰ͖Δ • val͸final, var͸࠶୅ೖՄ 

  7. ม਺ͷએݴ(2/3) • ܕਪ࿦Λαϙʔτ • Φϓγϣφϧ • ܕͷએݴ࣌ʹ໌ࣔతʹ?Λ͚ͭͳ͍ͱnullΛ ڐ༰͠ͳ͍ 

  8. ม਺ͷએݴ(3/3) • Ϋϥεʹଐ͢Δඞཁ͸ͳ͍(= ୈ1ڃΦϒδΣ Ϋτͱͯ͠એݴͰ͖Δ) • ఆ਺ʹ͸const 

  9. ؔ਺ͷએݴ(1/2) • funम০ࢠͰؔ਺͕એݴͰ͖Δ • Ҿ਺ͱ໭Γ஋ͷࢦఆ͸ҎԼͷ௨Γ • த਎͕1ߦͰ͔͚Δ৔߹͸=Ͱܨ͛ͯreturnΛ লུ΋Ͱ͖Δ 

  10. ؔ਺ͷએݴ(2/2) • σϑΥϧτҾ਺ͱ໊લ෇͖Ҿ਺Λαϙʔτ 

  11. ৚݅ࣜ if (1/3) • Kotlinʹ͓͍ͯif͸ࣜ(expression) • จ(statement)Ͱ͸ͳ͍ • ͭ·Γ஋Λฦ͢͜ͱ͕Ͱ͖Δ 

  12. ৚݅ࣜ if (2/3) • ʢ࢒೦ͳ͕Βʣࡾ߲ԋࢉࢠ͸αϙʔτ͞Εͯ ͍ͳ͍ • ΤϧϏεԋࢉࢠ( ?: )͸αϙʔτ͞Ε͍ͯΔ

    
  13. ৚݅ࣜ if (3/3) • null νΣοΫ͸είʔϓؔ਺ͱΦϓγϣφϧ ͷ૊Έ߹Θ͕ͤΑ͘࢖ΘΕΔ 

  14. ৚݅ࣜ when (1/2) • if ಉ༷ʹwhen΋ࣜ • whenͷޙΖͷ()ͷ஋͕ൺֱͷର৅ʹͳΔ 

  15. ৚݅ࣜ when (2/2) • whenͷޙΖͷ() ͸ͳͯ͘΋OK • ൺֱର৅ͷ஋͕ෳ਺͋Δ৔߹ʹศར 

  16. ·ͱΊ

  17. ·ͱΊ • ม਺ͷએݴɺؔ਺ͷએݴɺ৚݅ࣜ • Kotlin͸͔Θ͍͍ʂʂ 

  18. ͋Γ͕ͱ͏͍͟͝·ͨ͠