The mutable keyword seems to be one of the less known corners of C++. Yet it can be very useful, or even unavoidable if you want to write const-correct code […]
Writing maintainable, easy-to-read code
Code smells are indicators that there might be something afoul in our code. Here is a list of some of the most important smells.
A few days ago, a colleague asked me if it was wise to make every class a final class. Here is a more sophisticated answer than I could give at […]
Depending on their use, std::pair and std::tuple can be code smells. That’s why we should be careful around these two.
Prefixes are a rather controversial topic. Taking everything into account, I think we should not use prefixed names. Here’s why.
In my last refactoring session post, I wrote I had been lazy when it came to refactoring Fix. Actually, I’ve slacked on purpose, repeatedly skipping the refactoring steps of the […]
There are different guidelines out there about where and how many return statements to use in a function, e.g. return only once at the end of the function or return […]
When you accept weakly typed data as input or have them as output, still convert them to strongly typed objects inside your application.
Is everything we use a string for really just a bunch of characters? Is everything we use an int for really just a number? Probably not. We can have stronger […]
In the last two weeks I have already written about legacy applications, about how it has to be a team effort and how to plan the refactoring. This week’s post […]