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 In the real world
Search
Rémi Pradal
April 13, 2017
Programming
0
950
Kotlin In the real world
- What you should know before starting a Kotlin project -
Android Makers Paris 2017
Rémi Pradal
April 13, 2017
Tweet
Share
More Decks by Rémi Pradal
See All by Rémi Pradal
Une application, plusieurs apk : pourquoi faire, et comment ?
rpradal
0
190
Other Decks in Programming
See All in Programming
Introducing ReActionView: A new ActionView-Compatible ERB Engine @ Kaigi on Rails 2025, Tokyo, Japan
marcoroth
3
950
CI_CD「健康診断」のススメ。現場でのボトルネック特定から、健康診断を通じた組織的な改善手法
teamlab
PRO
0
190
あなたの知らない「動画広告」の世界 - iOSDC Japan 2025
ukitaka
0
430
Six and a half ridiculous things to do with Quarkus
hollycummins
0
130
Signals & Resource API in Angular: 3 Effective Rules for Your Architecture @BASTA 2025 in Mainz
manfredsteyer
PRO
0
110
CSC509 Lecture 04
javiergs
PRO
0
300
『毎日の移動』を支えるGoバックエンド内製開発
yutautsugi
2
210
Railsだからできる 例外業務に禍根を残さない 設定設計パターン
ei_ei_eiichi
0
370
2分台で1500examples完走!爆速CIを支える環境構築術 - Kaigi on Rails 2025
falcon8823
3
3.4k
フロントエンド開発に役立つクライアントプログラム共通のノウハウ / Universal client-side programming best practices for frontend development
nrslib
7
3.9k
私達はmodernize packageに夢を見るか feat. go/analysis, go/ast / Go Conference 2025
kaorumuta
2
500
エンジニアとして高みを目指す、 利益を生み出す設計の考え方 / design-for-profit
minodriven
23
12k
Featured
See All Featured
GraphQLの誤解/rethinking-graphql
sonatard
73
11k
Optimising Largest Contentful Paint
csswizardry
37
3.4k
Bash Introduction
62gerente
615
210k
Art, The Web, and Tiny UX
lynnandtonic
303
21k
KATA
mclloyd
32
15k
The Straight Up "How To Draw Better" Workshop
denniskardys
237
140k
Large-scale JavaScript Application Architecture
addyosmani
514
110k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
610
YesSQL, Process and Tooling at Scale
rocio
173
14k
How to Ace a Technical Interview
jacobian
280
24k
Transcript
By OCTO & The Refiners What you should be aware
of before starting a Kotlin project Rémi Pradal Android Makers 2017 K TLIN IN THE REAL WORLD
Android developer discovering Kotlin – Circa 2015
None
CAN I USE KOTLIN ON A LEGACY PROJECT? IS KOTLIN
MATURE ENOUGH FOR A BIG PROJECT? MULTIPLE LANGUAGES MIX BEST PRACTICES?
By OCTO & The Refiners Testability
“Design and document for inheritance or else prohibit it” -
Effective Java Item 17, Joshua Bloch
KOTLIN DESIGN ENFORCES « FINAL BY DEFAULT » DESIGN How
can I create my mock easily ?
OPEN WHAT YOU NEED TO MOCK Introduces test related characteristics
in production code OPEN ALL THE THINGS Useful for POKO used by a library Not specific to the test workspace USE INTERFACES Complies with the interface segregation principle Can add many boilerplate code
By OCTO & The Refiners Code quality tooling
None
By OCTO & The Refiners Interoperability
Great Interoperability Usable today in a legacy project. But...
COMPLEXIFY ONBOARDING DIFFERENT LANGUAGE PARADIGMS LANGUAGE MULTIPLICITY IN A PROJET
MAY LEAD TO INTEROPERABILITY BOILERPLATE ISOLATE THE DIFFERENT CODE BASES PER FEATURE OR TECHNICAL LAYER
By OCTO & The Refiners Language longevity
KOTLIN IS NOT GOOGLE’S SWIFT
TAKEAWAYS Embrace language’s design specificities Code quality tools are not
as advanced as Java’s Try to keep your codebase coherent when mixing Java & Kotlin Remember you are not using Android’s official language
None