Open / Closed Principle
Definition: An object should be open for extension but closed for modification. This principle states that code should only be modified to fix bugs and errors, and to extend the functionality a new class should be used. Typically the new class would be a derived class to enable code re-use from the original or a…
Read MoreSingle Responsibility Principle
Definition: An object should have a single responsibility. In practice, to adhere to this principle, an object is a class and that a class’s functionality is grouped around a single idea or unit of responsibility. Robert C Martin defined responsibility as a reason to change. This means that a class should only have one reason…
Read MoreThe SOLID principles of Object Orientated design
The 5 basic principles of OO design were put together in the early 2000s by Michael Feathers and Robert C Martin. They are intended to allow the developer to create software that is easy to maintain and extend over time. The patterns which have come out of these principles are usually easy to test and…
Read MoreOffice Politics
Over the years I have found a commonality in the way developers think, which is fundamentally different than non-technical managers. This difference has often perplexed me and I have often wondered exactly what the nature of this difference is. It usually manifests itself in the form of developers thinking they are in some way better…
Read More