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
810
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
160
Other Decks in Programming
See All in Programming
if constexpr文はテンプレート世界のラムダ式である
faithandbrave
3
630
CQRS/ES avec Symfony, c’est (trop) bien !
jeremyfreeagent
1
640
Goのエラースタックトレースの歴史と今後
sonatard
6
640
#phpcon_odawara オープン・クローズドなテストフィクスチャを求めて / open closed test fixtures
77web
3
220
Micro Frontends for Java Microservices - Devnexus 2024
mraible
PRO
0
480
Changed Rules: Architectures with Lightweight Stores
manfredsteyer
PRO
0
240
Azure OpenAI Serviceのプロンプトエンジニアリング入門
tomokusaba
3
620
Elm Form Validation
bkuhlmann
0
510
try!Swift Tokyo 2024 参加報告 LT
akidon0000
1
220
今、知っておきたい! 生成AIエージェントの世界
elith
3
350
Java 22 Overview
kishida
1
180
Behind VS Code Extensions for JavaScript / TypeScript Linnting and Formatting
unvalley
5
870
Featured
See All Featured
How To Stay Up To Date on Web Technology
chriscoyier
782
250k
Fantastic passwords and where to find them - at NoRuKo
philnash
36
2.5k
10 Git Anti Patterns You Should be Aware of
lemiorhan
647
58k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
39
4.4k
In The Pink: A Labor of Love
frogandcode
138
21k
Why You Should Never Use an ORM
jnunemaker
PRO
51
8.6k
Java REST API Framework Comparison - PWX 2021
mraible
PRO
18
6.9k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
1
1.3k
A designer walks into a library…
pauljervisheath
199
23k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
115
18k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
321
20k
A better future with KSS
kneath
231
16k
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