Kotlin 101
Dan Nizri
Android Developer @ Yodle
Structure of the talk
1 -> Intro to Kotlin
2 -> Language Features
4 -> Why Android?
3 -> Kotlin vs. Other Languages
5 -> Sample App
6 -> Summary & Sources
1 -> Intro to Kotlin
Why Kotlin?
According to JetBrains
2 -> Language Features
Model Objects
->
Data Classes
+ copy function
Limitations
Java
Kotlin
Null Safety
Null Safety: Examples
Null Safety: Safe Calls + Chaining
Java
Kotlin
First Class Functions
Java
SAM Type Conversion (Single Abstract Method)
Kotlin
Function Type
Higher-Order Functions
Higher-Order Functions & Lambdas
Procedural
notBobNames = [Joe, Sally]
Functional
notBobNames = [Joe, Sally]
Extension Functions
Extension Functions: Example 1
Extension Functions: Example 2
Nullable Receiver
3 -> Kotlin vs. Other Languages
Java
Scala
Clojure
Swift
4 -> Why Android?
Kotlin Android Extensions: Synthetic Properties
Getting Started
Getting started with Android and Kotlin - JetBrains
5 -> Sample App
6 -> Summary
Benefits
Risks
Sources & Interesting Links
Yodle
Lighthouse Field Service
Questions?
Kotlin
Contact: daniel.nizri@yodle.com
Extra Slides
Basic Syntax
Function definition
Mutable local variable
Immutable local variable
Java
Extension Functions: Advanced Example
Anko Library