In the last few years, I’ve noticed that the majority of the projects that I’ve participated roughly followed the same design. Speaking to colleagues and friends, the great majority said that they were also following the same design. It’s what I call…
In the first part of this Object-Oriented Design principles series, I covered the Single Responsibility Principle (SRP). I had also covered the Liskov Substitution Principle (LSP) on a previous post. So let’s move on to another Object-Oriented Design P…
The Liskov Substitution Principle was initially introduced by Barbara Liskov in a 1987 conference keynote address entitled Data abstraction and hierarchy. LSP is also part of SOLID, a group of five Object-Oriented Design Principles put together by Rob…
The first thing I learnt when I started with Object-Oriented Programming was that an object should have state and behaviour. And indeed, that’s how it was back then. However, since J2EE (Entity Beans) and other ORM tools like Hibernate, iBATIS, TopLink…
Tweet This post was originally published here by Valtech UK consultant Sandro Mancuso Over the years, working in different web-based Java projects, I noticed that there is a big confusion about the boundaries and overlaps between MVC, that is an architectural pattern, and a multi-tier architecture (also known as n-tier architecture). The main confusion is [...]
Over the years, working in different web-based Java projects, I noticed that there is a big confusion about the boundaries and overlaps between MVC, that is an architectural pattern, and a multi-tier architecture (also known as n-tier architecture). Th…
Cohesion is probably the most important concept of Object-Oriented Programming since it promotes a good level of encapsulation, separation of concerns and responsibilities, re-usability and maintainability. DefinitionCohesion (noun) : when the members …