3 ms·
The biggest problem of OO languages for me is - it always depends. Composition or inheritance or template or concrete? It depends. Extract methods? It depends
by namelosw 8y ago
The biggest problem of OO languages for me is - it always depends.
Composition or inheritance or template or concrete? It depends.
Extract methods? It depends.
Design patterns? It depends.
Although to master good OO design - knowing what and when to do something - is surely an art, it doesn't handle dynamic business model very well.
If I just express the business, I cannot handle requirement change. If I want to deal with some future change, I have to do a lot of non-business oriented design, making the code less expressive.
And most of the OO language don't have algebra data types, which makes expressing business model more awkward.