Jeongmin’s Log
Two series, both about the same question from different ends: what makes code possible to change.
Design Patterns, in Learning Order
The Gang of Four’s twenty-three, reordered so the patterns that are easiest to confuse are studied together – because what distinguishes two patterns is never the structure, it is the intent. Code is Kotlin, and every pattern is tagged with what the language did to it.
26 posts · complete
Code You Can Change
SOLID, legacy code, and refactoring – with the two canonical books put in direct conflict where they disagree, which is the most instructive thing in this area. The subject is not clean code; it is changeable code, and the difference is measurable.
Ends in a one-page procedure for the moment you are actually afraid of a file.
16 posts · complete
Coding agents: read Practices before writing or changing code — the conclusions from both series as decision rules, without the argument.
Three principles run under both:
- Program to an interface, not an implementation.
- Favor object composition over class inheritance.
- Encapsulate what varies.