|
|
|
|
|
by sheepmullet
4382 days ago
|
|
Over-engineering is a problem because it usually results in a much more complicated design than you really need and wastes a lot of time. However, over-engineering and spending quality time thinking about the design and domain are two separate things and typically the more you think about the design and domain the less likely you are to over-engineer. |
|
Developers tend to want to generalise everything because it makes it more interesting and has the appearance of good design. But generalising in one direction reduces flexibility in other directions. Better to copy and paste a bit at first and wait a bit before adding that extra extraction layer that generalises Foo.