Making Sense of Large Java and Kotlin Classes - Understanding and Refactoring Complex Codebases
Explore techniques for understanding and analyzing large Java and Kotlin classes in this comprehensive conference talk. Learn first principles for approaching unfamiliar codebases, ask the right questions about code, identify potential problems and code smells, and plan refactoring strategies. Discover innovative methods beyond traditional approaches like reading source code or navigating call graphs. Delve into behavioral code analysis, syntax highlighting experiments, dependency structure matrices, and data visualization techniques. Gain insights on the value of identifiers, quality of match, and handoffs in code comprehension. Explore tools like observable HQ and learn about vocabulary types, tokenization, and ideal graph structures. Equip yourself with practical skills to tackle complex codebases and improve your ability to work with inherited or unfamiliar projects.