Today we have another guest post by Alfredo Correa. In his previous article, Functions of variants are covariant, Alfredo described the concept of a covariant function, that is, how a […]
Changing the code without changing its functionality
We often use standard containers as members of our classes. In a lot of cases, the semantics we actually need is not equivalent to the semantics the containers provide.
In the last days, I’ve played around with Cevelop a bit, mainly interested in the refactoring capabilities it offers.
Code smells are indicators that there might be something afoul in our code. Here is a list of some of the most important smells.
Dipping my toes into a new project, I got a bunch of ugly warnings about a ton of C-casts inside a macro definition. Trying to get away from them was […]
Every refactoring can be composed of a set of simple basic steps. Knowing these basic refactoring steps is crucial when we want to continuously compile and test during the refactoring.
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 […]
I’ve written a few posts about refactoring already. What is still missing is a post about the basic principles, so here we go.
It’s time for the next refactoring session, and I happen to have been lazy on my current project. So, today I’ll start to write about some changes I did in […]
In the last weeks I have written about the contents of my “Large C++ Legacy Applications” talk: I’ve written about how dealing with those applications is a team game, about the […]