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
It is but not an "architecture" talk
Search
Ragunath Jawahar
December 01, 2018
Programming
4
260
It is but not an "architecture" talk
#105 December Meetup - BlrDroid + BlrKotlin
https://www.meetup.com/blrdroid/events/256468726/
Ragunath Jawahar
December 01, 2018
Tweet
Share
More Decks by Ragunath Jawahar
See All by Ragunath Jawahar
Single-responsibility principle meets the real world! (Dubai Edition)
ragunathjawahar
0
37
Single-responsibility principle meets the real world!
ragunathjawahar
0
140
Making sense of large Java and Kotlin classes
ragunathjawahar
1
250
Building Robust Software, Episode 3
ragunathjawahar
1
160
Building Robust Software, Episode 2
ragunathjawahar
1
120
Building Robust Software (Episode 1)
ragunathjawahar
1
340
Speed as a workplace habit
ragunathjawahar
1
300
Building Robust Apps (Swift Edition)
ragunathjawahar
0
230
Re-architecture
ragunathjawahar
0
460
Other Decks in Programming
See All in Programming
書き捨てではなく継続開発可能なコードをAIコーディングエージェントで書くために意識していること
shuyakinjo
0
200
オホーツクでコミュニティを立ち上げた理由―地方出身プログラマの挑戦 / TechRAMEN 2025 Conference
lemonade_37
1
440
バイブスあるコーディングで ~PHP~ 便利ツールをつくるプラクティス
uzulla
1
320
構文解析器入門
ydah
7
2k
CEDEC 2025 『ゲームにおけるリアルタイム通信への QUIC導入事例の紹介』
segadevtech
2
750
副作用と戦う PHP リファクタリング ─ ドメインイベントでビジネスロジックを解きほぐす
kajitack
3
520
Gemini CLIの"強み"を知る! Gemini CLIとClaude Codeを比較してみた!
kotahisafuru
3
920
実践!App Intents対応
yuukiw00w
1
150
What's new in Adaptive Android development
fornewid
0
130
技術的負債で信頼性が限界だったWordPress運用をShifterで完全復活させた話
rvirus0817
0
210
Android 15以上でPDFのテキスト検索を爆速開発!
tonionagauzzi
0
190
Reactの歴史を振り返る
tutinoko
1
170
Featured
See All Featured
A Tale of Four Properties
chriscoyier
160
23k
Typedesign – Prime Four
hannesfritz
42
2.7k
What's in a price? How to price your products and services
michaelherold
246
12k
RailsConf 2023
tenderlove
30
1.2k
Speed Design
sergeychernyshev
32
1.1k
How STYLIGHT went responsive
nonsquared
100
5.7k
Designing for Performance
lara
610
69k
How to train your dragon (web standard)
notwaldorf
96
6.2k
The Power of CSS Pseudo Elements
geoffreycrofte
77
5.9k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
We Have a Design System, Now What?
morganepeng
53
7.7k
Transcript
IT IS BUT NOT AN “ARCHITECTURE” TALK @RagunathJawahar | Uncommon
TEAM SIZE • Lone wolf / she-wolf • 2 /
3 member team • 4 / 5 member team • 5 - 10 member team • Greater than 10
EMOTIONS • Joy • Indifference • Annoyance • Frustration CODE
BASE &
TWO INFAMOUS STATEMENTS (EXCUSES) 1. We don’t need an architecture.
*Not drawn to scale Objects in front of you are
closer than they appear Time Features Prototyping A/B Tests No architecture With architecture
TWO INFAMOUS STATEMENTS (EXCUSES) 1. We don’t need an architecture.
2. They don’t give us enough time for architecture.
WHAT’S REQUIRED Important Unimportant Urgent Not Urgent Structure Behavior Structure
Behavior
WHAT ENDS UP HAPPENING… Important Unimportant Urgent Not Urgent
WHAT ENDS UP HAPPENING… Important Unimportant Urgent Not Urgent Structure
Behavior Behavior
Structure Behavior
Structure Behavior
Structure Behavior
Structure Behavior
“ The goal of software architecture is to minimise the
human resources required to build and maintain the required system. -Robert C. Martin
NO TIME FOR ARCHITECTURE? @rensvandenbergh
SETTLING ON AN ARCHITECTURE
None
FACTORS • Platform • Paradigm • Language • Tools &
dev practices INFLUENTIAL
FACTORS INFLUENTIAL • Platform • Paradigm • Language • Tools
& dev practices
IMPERATIVE FUNCTIONAL • MVC • MVP • MVVM • VIPER
• MVI (One Way) • Redux *Not an exhaustive list
IMPERATIVE FUNCTIONAL • Easy to learn • Mutability • Performance
• Learning curve • Immutability • Predictability • Asynchrony *Not an exhaustive list
DESIGN THINKING Explore Understand Evaluate Make
MAKING & EVALUATING (ANDROID) ARCHITECTURES • Hello stranger • Counter
• Login • BMI Calculator • Image chooser • Quiz with timer • Magnetometer
QUALITY ATTRIBUTES
UBER
SOME COMMON QUALITY ATTRIBUTES • Testability • Adoptability • Adaptability
• Availability • Reliability • Performance • Scalability *Not an exhaustive list • Security • Manageability • Buildability • Reusability • Maintainability • Simplicity • Efficiency
WORKFLOW
VISUALIZE
VISUALIZE
ESCAPE • Boilerplate • Slow down (feels like) VELOCITY
QUESTIONS? @ragunathjawahar / GitHub / Twitter / Medium