Category: Development

0

C++ delegates

In a previous article I wrote about the ubiquitous observer pattern, which is all about objects (called observers or listeners) that need to be notified when other objects in the...

0

Type erasure in C++

Polymorphism is the ability to use objects of different types in a generic way, using the same notation. In C++ there are two forms of polymorphism, dynamic and static polymorphism....

0

Friendship in C++

Encapsulation is a staple of object-oriented  programming: by hiding (or “abstracting away”) the implementation details of a class behind a public interface we can create abstract data types. Users of...

0

State Design Pattern

Many systems wait continuously for the occurrence of some event, and they react to the event by performing computations or changing their state. Once the event is handled, they go...

0

Observer Design Pattern

The Observer Pattern According to the GoF book the Observer pattern “defines a one to many dependency between objects so that when one object changes state, all its dependents are...

0

Command Design Pattern

The Command Pattern The Gang of Four’s book gives the following definition of the command pattern: “The Command pattern encapsulates a request as an object, letting you parameterize clients with...