4 ms·
There’s also a solid YAGNI argument against abstraction, especially when circumstances or requirements can change. You don’t yet know what abstraction you need
by mlthoughts2018 8y ago
There’s also a solid YAGNI argument against abstraction, especially when circumstances or requirements can change.
You don’t yet know what abstraction you need or what extensibility or generalizability you need, and prematurely extending in these directions can either paint you into a corner where you have to do terrible things to avoid throwing things away and rework, or else you have to bite the bullet and do a bunch of rework.
There can be a lot of benefits to just duplicating things like config, occasional pieces of function bodies, classes with modified functionality, or even using whole projects as templates, like quickly getting a collection of inter-related web servics going with copy/paste code and factoring out common code later.