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
How to be a better Android Developer
Search
Nevin
April 23, 2016
Programming
0
180
How to be a better Android Developer
Android Taipei , April 2016
Nevin
April 23, 2016
Tweet
Share
More Decks by Nevin
See All by Nevin
Google DevFest Kaohsiung 2019
cnevinc
0
66
Kotlin Server Side development
cnevinc
0
360
JCCONF 2017 - Tips for Kotlin Developers
cnevinc
0
130
Kotlin Idioms in Android
cnevinc
0
160
Firefox for Android - My Open Source Journey
cnevinc
0
130
MOPCON 2016
cnevinc
1
390
JCCONF 2016 - Redux on Android using Kotlin
cnevinc
2
800
Kotlin Development
cnevinc
1
93
菜鳥的Kotlin on Android之路
cnevinc
7
880
Other Decks in Programming
See All in Programming
一緒に働きたくなるプログラマの思想 #QiitaConference
mu_zaru
80
20k
Amazon CloudWatchの地味だけど強力な機能紹介!
itotsum
0
240
2ヶ月で生産性2倍、お買い物アプリ「カウシェ」4チーム同時改善の取り組み
ike002jp
1
110
複雑なフォームの jotai 設計 / Designing jotai(state) for Complex Forms #layerx_frontend
izumin5210
6
1.5k
カオスに立ち向かう小規模チームの装備の選択〜フルスタックTSという装備の強み _ 弱み〜/Choosing equipment for a small team facing chaos ~ Strengths and weaknesses of full-stack TS~
bitkey
1
130
Serving TUIs over SSH with Go
caarlos0
0
590
KawaiiLT 登壇資料 キャリアとモチベーション
hiiragi
0
160
On-the-fly Suggestions of Rewriting Method Deprecations
ohbarye
3
4.8k
Empowering Developers with HTML-Aware ERB Tooling @ RubyKaigi 2025, Matsuyama, Ehime
marcoroth
2
960
In geheimer Mission: AI Agents entwickeln
joergneumann
0
110
Laravel × Clean Architecture
bumptakayuki
PRO
0
140
Improve my own Ruby
sisshiki1969
0
100
Featured
See All Featured
The Pragmatic Product Professional
lauravandoore
33
6.6k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Product Roadmaps are Hard
iamctodd
PRO
53
11k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
49k
The Cost Of JavaScript in 2023
addyosmani
49
7.8k
Intergalactic Javascript Robots from Outer Space
tanoku
271
27k
Building an army of robots
kneath
305
45k
How GitHub (no longer) Works
holman
314
140k
The Invisible Side of Design
smashingmag
299
50k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Making the Leap to Tech Lead
cromwellryan
133
9.2k
The Straight Up "How To Draw Better" Workshop
denniskardys
233
140k
Transcript
Agenda • How to be a better Android developer •
Working Remotely
How to be a better Android developer
Topics • Work with legacy code - Refactor • Write
new code - Architecture • Re-inventing Wheels - Open Source Library • Learn and grow - Nevin’s Choice
Not rewrite Refactor
Refactor • For - Performance, Maintenance , Flexibility • When
- Fix bug, add feature, code review • How - Write Test First • Books : working effetely with legacy code & Refactor
Refactor • Long Method • Highly Coupled
Bad smell • Long Method • if condition • switch
statement • too many comment • for loop
Testing • Unit Test • Instrumentation / Integration Test
Espresso • https://caster.io/episodes/episode-1-android- testing-getting-started-with-espresso-2-0/ • Test Runner • Rule •
TDD
Adding a indirect layer Architecture
Architecture • Why extra layer? • Find bugs easily •
Fix bug easily • Add feature easily • Reduce bug / regression
Architecture • To enable sharing of logic • To explain
intention and implementation separately • To isolate change
Architecture • No architecture • MVP • Clean Architecture •
Redux
Package Structure • Package by component • Activity / Fragment
• Network • Utils.. • Package by feature • Add note • List note • View note detail
MVP • Model View Presenter • Model • View •
Presenter
MVP • Class Diagram • Sequence Diagram • Case Study
- Code Review Live
Clean Architecture
Redux / Flux
Architecture • MVP • Clean Architecture • Redux / Flux
Joy to the world Open Source Library
Re-Inventing Wheel • Design support / AppCompat library • Butterknife
• Dagger • Retrofit • Picasso • rxJava (rxRelay,rxAndroid) • Retrolambda • Realm
Re-Inventing Wheel • Install Code Snippet • Usage
In your commute, when you do the dishes Nevin’s Choice
Learn & Grow • Android Weekly • Fragmented Podcast •
Testing • Refactoring • Paid Training • Classic books
Sample Repo • u2020 • android-testing • ioschec
Classic Books • Refactoring • Effective Java • The Mythical
Man Month • Apprenticeship Patterns • Joel On Software / More … • Rework
Bonus: Things I wish I knew • Learn a different
language / paradigm • Read Android Source Code instead of SO • Join Conferences and Meetups • Conduct Public Speaking ( Conference oriented learning)
犢অమ蚤य़疑藯扖 犢మᥝ藯 ̿౯অమ褛౯ᇁᇁૡ֢̀ 薥ৼ珿絑ह 籧蝨Top Developer 磧మᥝ蝱݄ጱૡ֢肬䁰
Working Remotely and make your family happy http://fragmentedpodcast.com/episodes/036/
Benefit - for employee • Remote developers love their job
(Stackoverflow developer survey 2016 ) • Commute - Free • More control in life
Benefit - for employer • Bigger talent pool • You
help the world • 37 Signal
Tips • Communicate 4 times harder • Networking • Growth
• Source : remoteok.io , angelist.co
How? • Its all mental.
Nevin Chen http://nevinchen.com