Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Kotlin 101
Search
Ivan Bruel
October 21, 2015
Programming
2
1.3k
Kotlin 101
A brief overview on how Kotlin works and how it pairs alongside Java in an Android world.
Ivan Bruel
October 21, 2015
Tweet
Share
More Decks by Ivan Bruel
See All by Ivan Bruel
iOS Architectures - Art or Science?
ivanbruel
1
130
Android 101
ivanbruel
2
210
Other Decks in Programming
See All in Programming
NEWT Backend Evolution
xpromx
1
130
CDK引数設計道場100本ノック
badmintoncryer
2
440
効率的な開発手段として VRTを活用する
ishkawa
0
160
Agentic Coding: The Future of Software Development with Agents
mitsuhiko
0
120
High-Level Programming Languages in AI Era -Human Thought and Mind-
hayat01sh1da
PRO
0
850
AIと”コードの評価関数”を共有する / Share the "code evaluation function" with AI
euglena1215
1
180
The Evolution of Enterprise Java with Jakarta EE 11 and Beyond
ivargrimstad
0
210
Advanced Micro Frontends: Multi Version/ Framework Scenarios @WAD 2025, Berlin
manfredsteyer
PRO
0
380
LT 2025-06-30: プロダクトエンジニアの役割
yamamotok
0
840
PipeCDのプラグイン化で目指すところ
warashi
1
300
チームで開発し事業を加速するための"良い"設計の考え方 @ サポーターズCoLab 2025-07-08
agatan
1
460
The Modern View Layer Rails Deserves: A Vision For 2025 And Beyond @ RailsConf 2025, Philadelphia, PA
marcoroth
2
680
Featured
See All Featured
Writing Fast Ruby
sferik
628
62k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
8
700
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
It's Worth the Effort
3n
185
28k
Building Applications with DynamoDB
mza
95
6.5k
Gamification - CAS2011
davidbonilla
81
5.4k
The World Runs on Bad Software
bkeepers
PRO
69
11k
GraphQLとの向き合い方2022年版
quramy
49
14k
KATA
mclloyd
30
14k
Intergalactic Javascript Robots from Outer Space
tanoku
271
27k
Java REST API Framework Comparison - PWX 2021
mraible
31
8.7k
Designing for Performance
lara
610
69k
Transcript
Kotlin 101 @ BLOCO.IO
Ivan Bruel Mobile Developer @ Faber Ventures twitter.com/ivanbruel github.com/ivanbruel
Faber-Dev Bruno Oliveira Mobile Developer Afonso Tsukamoto Backend Developer João
Horta Frontend Developer Marcelo Lebre Lead Developer Ivan Bruel Mobile Developer
Android and Java A brief history lesson
Java 6 2006 Android 1.0 2008 Java 7 2011 Java
7 support 2013 Java 8 2014 Java 8 support ??? Android and Java Timeline
Lollipop 20% KitKat 43% Jelly Bean 29% Ice Cream Sandwich
4% Gingerbread 4% Platform versions Android and Java
Java 7 63% Java 6 37% Android and Java Java
versions
What’s wrong with Java? Aside from installing the Ask toolbar
What’s wrong with Java? Null references
What’s wrong with Java? Raw types
What’s wrong with Java? Covariant Arrays
What’s wrong with Java? Checked Exceptions
Kotlin Statically typed programming language for the JVM, Android and
the browser
Kotlin Why does it matter? 100% interoperable with Java Java
6 compatible
Kotlin What does it remove from Java? Checked Exceptions Non-class
primitive types Non-private fields Static members Wildcard types
Kotlin What’s new? Lambdas Properties Data classes Primary constructors Function
literals & inline functions Class delegation Extension functions Type inference Null-safety Singletons Smart casts Declaration-site variance String templates Range expressions
Kotlin How does it work? Kotlin source Java source kotlinc
javac bytecode Android ART Dalvik
Kotlin Hello, World! { }
Kotlin Hello, World!
Kotlin Type inference
Kotlin Null-safety NullPointerException Optional Safe!
Kotlin Smart casts Smart cast Smart cast
Kotlin String templates
Kotlin Range expressions
Kotlin Higher order functions and lambdas
Kotlin In-line functions
Kotlin Extension functions
Kotlin Properties and Constructors
Kotlin Properties and Constructors
Kotlin Singletons
Kotlin Companion objects
Kotlin But wait, there’s more! kotlinlang.org “Why Kotlin is my
next programming language” @ medium reddit.com/r/kotlin stackoverflow.com
Get to know us faber-ventures.com
[email protected]