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
KMM Architecture and Modularization
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Frank Tamre
June 25, 2022
Technology
33
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
KMM Architecture and Modularization
In this talk we go through KMM Modularization.
Frank Tamre
June 25, 2022
More Decks by Frank Tamre
See All by Frank Tamre
You Can GetX it
tamzi
0
43
a billion low end devices and their users
tamzi
0
40
a data structures primer
tamzi
1
41
kotlin MultiPlatform
tamzi
1
76
oh My Tools!
tamzi
1
43
15min Puzzlers
tamzi
1
35
Monetzing Android Applications
tamzi
1
90
Think of the next billion users: Building for Low End devices
tamzi
0
48
the State of the Assistant in 2019
tamzi
1
32
Other Decks in Technology
See All in Technology
Kiro Crewしか勝たん!?
miu_crescent
PRO
0
180
多摩川(.dev)ランニング入門 / Tamagawa.dev#3
fujiwara3
3
370
AIに丸投げしないトイル削減 / Eliminating Toil Without Leaving It All to AI
kohbis
2
470
動画配信アプリでの Engage SDK 導入 — TVer Android が Play ストアにコンテンツを届けるまで
techtver
PRO
0
120
生成AI時代の クレデンシャルとパーミッション設計
nrinetcom
PRO
3
1.5k
ペアプロの価値はコードを書くことだけじゃない
codmoninc
PRO
0
110
生成AIのテナント制御とシャドーMCP対策 | AIを"止めずに"、情報を守る
yukun
0
120
PdMをやめて、 "プロダクトビルダー"という 働き方に変えました / PdM to Product Builder
shikichee
2
720
Azure App Service / Container Apps の組み込み認証
kuniteru
0
200
Azure Cost Management の FOCUS コストデータを迷わず読むための“3つの軸”
tetsuyaooooo
0
140
いま、生成AIにKaggleをどこまで 任せられるか — ROGIIコンペでの進め方とTips
k951286
3
1.4k
AIで実装は速くなった。なのにプロダクトは速くならない。職能の壁を越えて価値のフローを設計する
nwiizo
6
7.2k
Featured
See All Featured
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.3k
Navigating Team Friction
lara
192
16k
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
890
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
3
810
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
74
42k
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
510
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
2.1k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1.3k
Build your cross-platform service in a week with App Engine
jlugia
234
19k
Skip the Path - Find Your Career Trail
mkilby
1
220
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
490
Transcript
frank tamre @tamrefrank KMM: an architecture & modularization short story
who am i?
frank tamre
kyosk
do stuff
kotlin recipes
kotlin recipes @kotlinrecipes
Jetpack composed
@jetpackcomposed Jetpack composed
KMM: an architecture & modularization short story
what I will cover agenda various approaches the bad modularization.
architecture. KMM context q&a
_
_architecture
architecture architecture architecture
architecture architecture - Mark Richards and Neal Ford Software Architecture:
The Hard Parts (2021) Fundamentals of Software Architecture (2020) - Mark Richards ,Neal Ford, Pramad Sadalage & Zhamak Dehgani
architecture architecture architecture is…
architecture architecture not static
architecture architecture evolves over: - time - developers
architecture architecture blueprint of the system
architecture architecture No one true AWESOME
architecture architecture architecture decisions
architecture architecture design principles architecture decisions
architecture architecture design principles architecture decisions structure
architecture architecture design principles architecture decisions structure
architecture architecture architecture decisions
architecture architecture define rules how system should be constructed
architecture architecture design principles
architecture architecture a guideline to building your system
architecture architecture architecture characteristics
architecture architecture define the success criteria of a system
architecture architecture 12
architecture architecture 10-tys and 2-ces
architecture architecture availability reliability testability scalability recoverability elasticity deployability learnability
security agility
architecture architecture fault tolerance
architecture architecture fault tolerance performance
architecture architecture availability reliability testability scalability recoverability elasticity deployability learnability
security agility fault tolerance performance
_
_modularization
modularization modularization Clean C++20: Sustainable Software Development Patterns and Best
Practices By Stephen Roth
modularization modularization “an approach to divide a software system into
multiple discrete and, ideally, independent building blocks (modules).”
modularization modularization “each module is expected to carry out a
specific task of the software independently.”
modularization modularization “each module is expected to carry out a
specific task of the software independently.”
modularization modularization Modularization has principles
modularization modularization 2 principles
modularization modularization Single Responsibility Principle
modularization modularization Single Responsibility Principle each software unit—and these include,
among others, modules, classes, and functions—should have only one single, well-defined responsibility.
modularization modularization Single Level Abstraction
modularization modularization Single Level Abstraction each software unit should be
composed of parts that are all at the next lower level of abstraction.
modularization modularization SLA + SRP
modularization modularization reflect the real world
modularization modularization • Information hiding • Strong cohesion • Loose
coupling
_
_kmm context
mkahawa
modularization modularization platform code legend shared KMM logic
Behance Sample Apps
modularization modularization android platform UI code windows platform UI code
ios platform UI code .github/workflows shared bLoc1 util bLoc2 Kotlin gradle files
modularization modularization shared offers checkOut cart profile Rewards outlets
modularization modularization util data UIsystem Res
modularization modularization util Kotlin gradle files dataSrc coffeeRepository offersRepository …Repository
data Mappers coffeeMappers offersMappers …Mappers
modularization modularization util Kotlin gradle files UISystem type animations colors
imageSrcs
_
_various approaches
modularization modularization victorKabata: KMM Template & Notflix kotlin: KMM production
sample terrakok: KMM awesome copperleaf: KaMPKit ballast
modularization modularization
_
_the bad
the bad the bad you NEED a macBook
the bad the bad Learn IOS Dev - swiftUI
_in summary
summary summary _no silver bullet
summary summary _no silver bullet _your needs
summary summary _no silver bullet _your needs _your experience
summary summary _no silver bullet _your needs _your experience _#keepLearning
summary summary _no silver bullet _your needs _your experience _#beExperimental
_#keepLearning
_q&a