Lecture: Are the old ways sometimes the best?
Comparing the 'classic C++' and 'modern' ways to solve various programming tasks
A look at some of the places where C++ now offers multiple ways to do the same thing, examining some of the strengths and weaknesses of each approach.
C++ has undergone many changes since the first ISO version was published in 1998.
Some of the features that have been added to the language provide a replacement for existing idioms.
In this talk I will look at some of the trade-offs involved in such replacements and examine some of the strengths and weaknesses of the different ways we have in the current language of achieving the same end.
The set of issues involved include:
- readability and expression of intent
- the likelihod and consequences of things going wrong
- the cost of change
The talk will be based on features of C++, although many of the principles have a wider application.