OO Design Principles Compilation(mmiika.wordpress.com)
mmiika.wordpress.com
OO Design Principles Compilation
http://mmiika.wordpress.com/oo-design-principles/
5 comments
Someone please add this to the top of the list.
There is little value in following programming rules that you don't understand.
There is little value in following programming rules that you don't understand.
Agreed. Most of software 'methodology' is really software ideology. It's just cargo cult programming. For me the key consideration in building software is whether it produces more money than it consumes.
I prefer to think of these as rules of thumb rather than principles. I agree with the spirit of pretty much all of them, but to me, "principle" sounds like one of those rules you're never supposed to break. There are often trade-offs to following these sorts of rules, and sometimes the cost is too high or the process too idealised for real world projects.
This list is very useful. It's 2011 now and you have no idea how many people don't know more than half of the list.
and also how many programmers are extremely effective and know perhaps none of the list.
The number of programmers who practiced Object Oriented mainstream languages and don't know at least a single item in list and are extremely effective is probably close to the number of unicorns that exist in this world :).
People don't just suddenly know how to write good programs. They read materials, they write code and continue to learn from other people.
Sorry, I don't buy the myth and folklore. I used to about 3-4 years ago before I realized that many stories were hyped up.
People don't just suddenly know how to write good programs. They read materials, they write code and continue to learn from other people.
Sorry, I don't buy the myth and folklore. I used to about 3-4 years ago before I realized that many stories were hyped up.
I think the best programmers know all this stuff instinctively.
following the same topic... http://www.barbarianmeetscoding.com/blog/2011/2/23/best-prac...
Looks like the server has been hacker news'd.
Instead of thinking in shoulds I like to think in terms of causes and effects. If you don't follow the law of demeter then these will be the effects. Then the programmer realizes they have a choice: even though the law of demeter usually brings about desirable consequences, maybe in a particular situation the effects of not following the law of demeter bring about the better set of consequences.
Thinking in terms of causes and effects also loosens potential dogma.