Recently I have worked on removing a compile time dependency between two domains. What I have stumbled upon turned out to be a simple yet comprehensive example of a common problem that I believe many of us encounter every day. Below you can find what was the problem setting, why it important to get rid […]
Category: Clean Code
If you have been working as a software developer, you are probably aware that following Uncle Bob’s advises regarding number of arguments a function should take is difficult and requires some experience. Clean Code states among others that: The ideal number of arguments for a function iszero (niladic). Next comes one (monadic), followedclosely by two […]
A checkbox must be read only once!
Boolean flags are bad. I would agree that a sheer ration between booleans and other data types can be quite a valid measurement of code quality. To support these statement I’d like you to read just two quotes: Flag arguments are ugly. Passing a boolean into a function is a truly terrible practice. It immediately […]
Never expose boolean
Imagine a startup creating a management system for a company that operates in a single country. Sooner or later, there comes a feature to distinguish contractors between home country and foreign ones. You may imagine a developer introducing a small private class with a boolean property IsForeign, so the class that represents a contractor looks […]
Most of us take for granted that object-oriented paradigm is not only mature, but the “good” way of developing applications. Despite the fame of functional programming which, as time goes by, becomes a real power, most of software is created in the object-oriented way. Or at least we believe so. But following the principles is […]