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
スキーマ駆動で、Zod OpenAPI Honoによる、API開発するために、Hono Takibiというライブラリを作っている
nakita628
0
330
オンデバイスAIとXcode
ryodeveloper
0
270
O Que É e Como Funciona o PHP-FPM?
marcelgsantos
0
220
TFLintカスタムプラグインで始める Terraformコード品質管理
bells17
2
480
20251016_Rails News ~Rails 8.1の足音を聴く~
morimorihoge
3
870
あなたとKaigi on Rails / Kaigi on Rails + You
shimoju
0
220
Vueのバリデーション、結局どれを選べばいい? ― 自作バリデーションの限界と、脱却までの道のり ― / Which Vue Validation Library Should We Really Use? The Limits of Self-Made Validation and How I Finally Moved On
neginasu
2
1.7k
「ちょっと古いから」って避けてた技術書、今だからこそ読もう
mottyzzz
12
7.2k
Migration to Signals, Resource API, and NgRx Signal Store
manfredsteyer
PRO
0
130
Amazon ECS Managed Instances が リリースされた!キャッチアップしよう!! / Let's catch up Amazon ECS Managed Instances
cocoeyes02
0
110
CSC509 Lecture 08
javiergs
PRO
0
270
Software Architecture
hschwentner
6
2.4k
Featured
See All Featured
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.2k
Building an army of robots
kneath
306
46k
Code Review Best Practice
trishagee
72
19k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
22k
Writing Fast Ruby
sferik
630
62k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3k
Gamification - CAS2011
davidbonilla
81
5.5k
Why Our Code Smells
bkeepers
PRO
340
57k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.5k
Code Reviewing Like a Champion
maltzj
526
40k
How to Ace a Technical Interview
jacobian
280
24k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
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