writingBetterCode() (en)
summary
Shows concrete changes: replaces AsyncTask hides execution details with use Executors and Runnables so threading behavior is explicit, advocates a core as Java-only module that the Android app adapts to, cites tooling like Dagger, OkHttp, JUnit and Espresso, and claims this split yields fast deterministic unit tests and scalable integration tests. Gives the example that Google Inbox ports a Java core to iOS and web, and notes industry practice of fortnight or two-week release cycles as the payoff.
AI-written summary · about
chapters (18)
- 0:00Start
- 4:26For the business
- 4:59For developers
- 6:08SOLID principles
- 6:36Single responsibility
- 7:19Open/closed systems
- 8:13Liskov substitution
- 9:29Interface segregation
- 10:28Dependency inversion
- 11:36AsyncTask
- 14:01Executor
- 15:39App & core
- 16:16Business logic?
- 21:48Testing and TDD
- 23:07Unit tests
- 23:51Integration tests
- 24:13The middle ground
- 25:51Good code... is good!
related talks
26mKeynote: Being more than an Android Developer
49mBe Like Water: Keeping Up with Android
34mBeing more than an Android developer
36mAndroid to Full-Stack: A Devs Journey to the Great Unknown
43mLearning modern Java the playful way
30mWhat I Learned in Two Years as an Android Engineer
42m12 Years On: A Retrospective
30mBehind The Screen: The Humans Who Use Our Code
