3 ms·
(this is probably not going to be a very popular answer here, since most people enjoy making things abstract, and feel like they're creating value) Making thin
by arnorhs 12y ago
(this is probably not going to be a very popular answer here, since most people enjoy making things abstract, and feel like they're creating value)
Making things too abstract, too early, is usually a bad sign. In most cases, the most most specific and straight forward solution to a problem is the best one.
There's definitely cases where you're simplifying things by making them more abstract and reusable (but making something reusable before you need to reuse it is a waste of time) -- another good case is where you're using the principle of separation of concerns.
I think when I started developing I made everything very abstract, b/c all the books you read would also tell you that was a good thing.
It's not. Until you need to, at least.
- dhotson 12y agoYep, it's that balance between abstraction and indirection. Abstraction can be a great tool, but it comes with the cost of added indirection. You want to aim for the sweet spot in the middle somewhere.