Architectural patterns describe the fundamental structure of a software system and are often based on design patterns. The five Pattern-Oriented Software Architecture series books provide a precious source of architectural patterns.
I'm happy to present today a guest post from Alexander Eisenhuth. Alexander will write about his passion: good software architecture.
This post is unique because I have written about all the topics mentioned in this post already. Therefore, I only provide a few words about the topic and a link to the post mentioned.
The Covariant Return Type of a member function allows an overriding member function to return a narrower type. This is particularly useful when you implement the Prototype Pattern.
When you want to use a user-defined type in a range-based for-loop, your user-defined type has to implement the Iterator Protocol.
A Null Object encapsulates a do nothing behavior inside an object. It is often pretty comfortable to use a neutral object.
A value object is a small object whose equality is based on state, but not identity. Typical value objects are money, numbers, or strings.
The concept of a regular type goes back to the creator of the Standard Template Library (STL) Alexander Stepanov. A regular type is a user-defined type and behaves like a built-in type.
The rule of zero, or six, is one of the advanced rules in modern C++. I wrote in my current book "C++ Core Guidelines Explained: Best Practices for Modern C++" about them. Today, I want to quote the relevant parts of my book in this post.
Argument-Dependent Lookup (ADL), also known as Koenig Lookup, is a set of "magical" rules for the lookup of unqualified functions based on their function arguments.
Hunting
Today 887
Yesterday 6519
Week 37449
Month 181620
All 11662774
Currently are 140 guests and no members online
Kubik-Rubik Joomla! Extensions
Read more...
Read more...