Slide 1

Slide 1 text

Kotlin Conf Overview 2017.12.18 CA.kt #5 @େࡕ 2017.12.19 CA.kt #6 @෱Ԭ @satorufujiwara

Slide 2

Slide 2 text

About me Satoru Fujiwara (@satorufujiwara) Android Engineer @CyberAgent ,Inc Organizer of Shibuya.apk

Slide 3

Slide 3 text

Kotlin & Me FRESH! ΛKotlinͰ։ൃ (2015೥3݄ʙ) Kotlin Advent Calendar (2015೥/2016೥/2017೥) -ʮ2016೥ɺKotlinͰAndroid։ൃ͢Δํ΁ʯ @Qiita ( goo.gl/0medax ) Kotlinೖ໳·Ͱͷॿ૸ಡຊ ( goo.gl/5vUT7o ) Kotlin ΠϯɾΞΫγϣϯ (຋༁ 2017೥10݄31೔ग़൛)

Slide 4

Slide 4 text

Kotlin in Action • Kotlinͷ։ൃνʔϜʹΑͬͯॻ͔Εͨຊ • Kotlinͷίϯηϓτ͔ΒKotlinͷݴޠػೳΛج ຊػೳ(if/when/ΫϥεͳͲ)͔Βൃలػೳ (nullable/lambda/ߴ֊ؔ਺/૯শܕ)·ͰΧόʔ • ຋༁͠·ͨ͠ʂ

Slide 5

Slide 5 text

ւ֎ΧϯϑΝϨϯεࢀՃྺ • Googel I/O (2015/2016/2017) • DroidCon NY 2015 • DroidCon London 2016 • DroidCon SF 2017 • Kotlin Conf 2017

Slide 6

Slide 6 text

@satofurujiwara Kotlin Conf Overview 6

Slide 7

Slide 7 text

Kotlin Conf • KotlinΛςʔϚʹͨ͠ॳΊͯͷΧϯϑΝϨϯε • ओ࠵͸JetBrains • ৔ॴ͸αϯϑϥϯγείͷԊ؛෦(Pier 27) • 1200ຕͷνέοτ͕ചΓ੾Ε

Slide 8

Slide 8 text

8 Union Square Twitter Uber DroidConSF KotlinConf ςϯμʔϩΠϯ ϑΟογϟʔϚϯζɾϫʔϑ Moscone Center Golden Gate Bridge

Slide 9

Slide 9 text

9

Slide 10

Slide 10 text

@satofurujiwara Kotlin Conf Partners 10

Slide 11

Slide 11 text

11

Slide 12

Slide 12 text

12 Kotlin Conf / DroidCon SF

Slide 13

Slide 13 text

JetBrainsͷϒʔε Kotlinͷ։ൃνʔϜ͕͍Δ

Slide 14

Slide 14 text

Androidͷϒʔε ChetࢯɺYigitࢯͳͲGoogler΋དྷͯͨ

Slide 15

Slide 15 text

KotlinϞχϡϝϯτ DroidConʹൺ΂͓͕͔͔͍ͯۚͬͯΔײ

Slide 16

Slide 16 text

16

Slide 17

Slide 17 text

@satofurujiwara Kotlin Conf Sessions 17

Slide 18

Slide 18 text

Keynote Kotlin for Multiplatform

Slide 19

Slide 19 text

Kotlin Conf Keynote • Kotlin 1.2 RC (support for multi-platform project) • Kotlin/Native iOS Support • ৄ͘͠͸ϒϩάʮKotlinConf Keynote Recapʯ • https://blog.jetbrains.com/kotlin/2017/11/kotlinconf-keynote- recap/

Slide 20

Slide 20 text

Android Kotlin Guides https://android.github.io/kotlin-guides/

Slide 21

Slide 21 text

Kotlin Conf Sessions • 44 sessions • 3 tracks (St. Petersburg / Munich / Prague) • JetBrains / Google + CfP • TBA sessions : Kotlin/Nativeͷ࿩ • ಈը͕શͯެ։͞Ε͍ͯΔ • https://blog.jetbrains.com/kotlin/2017/12/kotlinconf-2017-session-recordings-and-photos-are-here/ • ηογϣϯ༻ͷΞϓϦ͕͋Δ(Android / iOS)

Slide 22

Slide 22 text

Sessions Detail • ݴޠʹ͍ͭͯ : 9 • Tool(Gradle,Lint etc)ʹ͍ͭͯ : 6 • ϚϧνϓϥοτϑΥʔϜ(Kotlin/Native Kotlin/JS) : 4 • Spring : 4 • ίϧʔνϯ : 3 • kategory.ioͷએ఻ : 2

Slide 23

Slide 23 text

kategory.io KΛTEGORY is a library for Typed Functional Programming in Kotlin. It includes the most popular data types, type classes and abstractions such as Option, Try, Either, IO, Functor, Applicative, Monad…

Slide 24

Slide 24 text

@satofurujiwara Pickup Sessions 24

Slide 25

Slide 25 text

Voting System ग़ޱͰ഑ΒΕͨΧʔυΛ౤ථ͢Δ

Slide 26

Slide 26 text

Kotlin Conf Apps https://github.com/JetBrains/kotlinconf-app ΞϓϦͰ΋౤ථͰ͖Δ

Slide 27

Slide 27 text

27

Slide 28

Slide 28 text

Top Five Rated Talks • Kotlin Puzzlers by Anton Keks • The Road to Kotlintown by Huyen Tue Dao and Christina Lee • Two Stones, One Bird: Implementation Tradeoffs by Christina Lee • Party Keynote by Michael Carducci • How to Contribute by Yoshinori Isogai

Slide 29

Slide 29 text

Kotlin Puzzlers by Anton Keks • Kotlinͷݴޠ࢓༷Λ࢖ͬͨΫΠζ • https://github.com/angryziber/kotlin-puzzlers

Slide 30

Slide 30 text

The Road to Kotlintown by Huyen Tue Dao and Christina Lee • @queencodemonkey͞Μͱ@RunChristinaRun͞Μ • લ൒͸ओʹKotlin In Action 9ষʮδΣωϦΫεʯͷ࿩ • ޙ൒͸֦ுؔ਺ɺϥϜμɺDSL () • ܕͷ࿩ΛίʔυΛ࢖ͬͯղઆ(ϓϨθϯࢿྉ͕ίʔυ) • UnitܕɺδΣωϦΫεܕͷมҐͷ࿩ͳͲ

Slide 31

Slide 31 text

Two Stones, One Bird: Implementation Tradeoffs by Christina Lee • ೋੴҰௗ (ೋ཯എ൓ͳ΋ͷ͸ٞ࿦ͯ͠࢖͓͏) • let/apply/run/with/also ͱ͍ͬͨείʔϓؔ਺ͷ࢖͍ॴ • Delegates.notNull or lateinit • ϓϩύςΟ or ؔ਺(fun) ͷͲͪΒΛ࢖͏͔

Slide 32

Slide 32 text

32

Slide 33

Slide 33 text

Christina Lee(@RunChristinaRun) The Road to Kotlintown
 Two Stones, One Bird: Implementation Tradeoffs

Slide 34

Slide 34 text

34

Slide 35

Slide 35 text

Party Keynote by Michael Carducci • Ұ೔໨ͷPartyલͷ࠷ऴηογϣϯ • ϚδοΫ

Slide 36

Slide 36 text

How to Kontribute by Yoshinori Isogai • Kotlinͷ։ൃ؀ڥΛ੔͑ͯɺKotlinͷContributer(Kontributer)ʹͳΔ·Ͱ ͷखॱ • LT1ճ͔ͨ͜͠͠ͱͳ͔ͬͨΤϯδχΞ͕KotlinConf 2017ʹొஃ͓ͨ͠࿩ • http://shiraji.hatenablog.com/entry/2017/11/04/193914 • How to Kontribute @ dex.fm • http://dex.fm/post/168154381478/037-how-to-kontribute

Slide 37

Slide 37 text

How to Kontribute The Only Japanese Speaker

Slide 38

Slide 38 text

38

Slide 39

Slide 39 text

39

Slide 40

Slide 40 text

Other Pickup Sessions • Kotlin Types: Exposed by Svetlana Isakova • Bootiful Kotlin by Josh Long • How to Build a React App in Kotlin by Dave Ford • Testing Kotlin at Scale: Spek by Artem Zinnatullin

Slide 41

Slide 41 text

Kotlin Types: Exposed by Svetlana Isakova • Kotlinͷܕʹ͍ͭͯͷ࿩ • جຊܕ/Nullڐ༰ܕ/Collectionܕ • Kotlin In Action ͷ6ষͷ಺༰͔ΒͷൈਮͰ͋Δ͕ඞݟ

Slide 42

Slide 42 text

Svetlana Isakova(@sveta_isakova) Developer Advocate, Author of Kotlin In Action Kotlin Types: Exposed

Slide 43

Slide 43 text

@satofurujiwara Summary 43

Slide 44

Slide 44 text

Kotlin Conf Overview • JetBrains+Google͕׬શʹαϙʔτͨ͠KotlinΧϯϑΝϨϯε • ͓͔͚͍ۚͯΔɺෆ׳Εͳ෦෼΋͋Δ(WiFi౳) • Kotlinͷݴޠͷະདྷͷ࿩(ϚϧνϓϥοτϑΥʔϜ)͕ଟ͍ • Android Specific͸΄΅0ɺॳาతͳ಺༰΋ଟ͔͔ͬͨ΋ • ΞοτϑΥʔϜͰ࣭ٙԠ౴΋ଟΊ • Have a Nice Kotlin!

Slide 45

Slide 45 text

Next Steps • ϒϩάΛνΣοΫ : KotlinConf Keynote Recap • kotlinconf-appͷ࣮૷ΛݟΔ • ಈը/εϥΠυͷνΣοΫ

Slide 46

Slide 46 text

Thank you! Have a Nice Kotlin!