Writing code to make sure that input parameters are not null does not make Java code "safer", exactly the opposite, it makes code less readable and less safe. Code with null-checks is less readable It would be difficult to argue that null-checks are attractive. Most of the time it's just boilerplate code which contributes nothing … Continue reading Why I never null-check parameters
Creating packages, assigning classes to packages and creating a package hierarchy is usually not a top priority in software designs. This however presents a missed opportunity to make your design more readable and maintainable. This article helps you take your Java Class packaging skills to the next level, not just for the holiday season. Packages … Continue reading Happy Packaging!
Having nothing better to do on a rainy Sunday afternoon, I though I would catch up with the CleanCode CaseStudy Project, see how it's structured and what its connection to Clean Architecture and other concepts from Uncle Bob is. Here is what I found... Let's see the Code After cloning the project from github, the … Continue reading Screaming Architect
This article is about a simplified version of real code running at a financial institution and how maintenance problems with this code can be avoided by using Object-Oriented Design. The purpose of the code is to represent retail money Accounts and enable transferring money, define recurring transfers and to support the usual functionality you find … Continue reading Object-Oriented Solutions: Accounts and Currencies
The HTTP Status Codes Everybody knows at least some HTTP Status Codes, even if they don't realize it. Most people did at one point or another in their web browsing career see the famous 404 - Not Found, or 200 - OK codes. How could these codes be represented in Java code however, when writing … Continue reading Quasi-Enumerations
When Java 1.5 introduced Annotations, Enterprise Developers had high hopes that it would make their life developing EJBs and other Enterprise Artifacts much easier. See for example this contemporary article: Simplify enterprise Java development with EJB 3.0. Since then however, using Annotations the way Java Enterprise started to use them had some unforeseen consequences and … Continue reading Evil Annotations