Mobiconf 2018: Carola Nitz, VideoLabs
summary
Codebases contain decades-old classes (one example dates to 2008) and accumulate fragile branches of checks that slow development and morale. Practical fixes include CI that builds lowest supported OS, enforcing PR rules with Danger, style enforcement with SwiftLint, and releases automated with fastlane. For changes, prefer incremental tactics: write tests or short release checklists, add features via sprout/rep classes or feature flags, use extraction to split giant functions, and find dead code with grep and the static analyzer.
AI-written summary · about
chapters (10)
- 0:00Introduction and motivation
- 2:28What is legacy code
- 5:19Problems with legacy code
- 7:50Automate all the things
- 12:25Incremental changes over rewrites
- 16:49Adding features without breaking code
- 18:56Refactoring old code
- 21:29Feature flags and dead code
- 23:37Summary and final advice
- 25:30Q&A session
related talks
32mBuilding a sustainable codebase: 7 years and counting
35mQuickly and Safely Refactoring Legacy Code
01h 31mClean(er) Code for Large Scale Legacy Applications
35mFive Lines of Codes
01h 01mGuide to Destroying Codebases the Demise of Clever Code
24mRichard Gross Head of Software Archeology, MaibornWolff
53mTools and practices to help you deal with legacy code
42mBuilding Scalable Mobile Projects: Fast Builds, High Reusability and Clear Ownership
