Upgrade to Pro — share decks privately, control downloads, hide ads and more …

How to be a better Android Developer

Nevin
April 23, 2016

How to be a better Android Developer

Android Taipei , April 2016

Nevin

April 23, 2016
Tweet

More Decks by Nevin

Other Decks in Programming

Transcript

  1. Topics • Work with legacy code - Refactor • Write

    new code - Architecture • Re-inventing Wheels - Open Source Library • Learn and grow - Nevin’s Choice
  2. Refactor • For - Performance, Maintenance , Flexibility • When

    - Fix bug, add feature, code review • How - Write Test First • Books : working effetely with legacy code & Refactor
  3. Bad smell • Long Method • if condition • switch

    statement • too many comment • for loop
  4. Architecture • Why extra layer? • Find bugs easily •

    Fix bug easily • Add feature easily • Reduce bug / regression
  5. Architecture • To enable sharing of logic • To explain

    intention and implementation separately • To isolate change
  6. Package Structure • Package by component • Activity / Fragment

    • Network • Utils.. • Package by feature • Add note • List note • View note detail
  7. Re-Inventing Wheel • Design support / AppCompat library • Butterknife

    • Dagger • Retrofit • Picasso • rxJava (rxRelay,rxAndroid) • Retrolambda • Realm
  8. Learn & Grow • Android Weekly • Fragmented Podcast •

    Testing • Refactoring • Paid Training • Classic books
  9. Classic Books • Refactoring • Effective Java • The Mythical

    Man Month • Apprenticeship Patterns • Joel On Software / More … • Rework
  10. 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)
  11. Benefit - for employee • Remote developers love their job

    (Stackoverflow developer survey 2016 ) • Commute - Free • More control in life
  12. Tips • Communicate 4 times harder • Networking • Growth

    • Source : remoteok.io , angelist.co