Games are generally developed on an engine library that is developed by a separate team, on a different lifecycle. Upgrading to a newer version of the engine during game development can be a pressure point – there may be improvements … Read More
Software Architecture
Using Structure101 “modules” to control APIs in C/C++
Cross project API control can play a vital role in managing a well-organized codebase. In this post, we’ll take a look at how to achieve API control between projects using the Modules feature in Structure101 Studio. For a full walkthrough … Read More
Software erosion and package tangles
My recent post on architectural erosion in the findbugs code-base was generally well received, but there were some skeptical voices. In a comment, Emeric questioned whether cyclic dependencies at the package level are anything more than a smell (if that). … Read More
Software erosion in pictures – Findbugs
My particular area of interest in software these days is the importance of levels of abstraction above the raw code. In Java, the most natural place for these to manifest themselves is through the package structure (though this is certainly … Read More