Design principles play an important part in software development. When combined they make it easy for programmers to develop software that is easy to maintain and extend as well as allowing developers to avoid code smells and refactor the code more easily. Plus they are part of the agile or adaptive software development.
This was the starting point of our presentation during the Bucharest Java User Group event hosted by Luxoft Training. Facilitated by Ionut Bilica, Team Lead for Luxoft, the presentation focused on how the Design Principles applied in Java, as rules to develop scalable and easily maintainable code.
The presentation covered the SOLID principles as defined by Robert C. Martin. Each one was explained in detail with practical examples from the Java programming language, highlighting both the way that SOLID principles ease the work of the software developer as well as the challenges that can be faced when they are not respected. The participants also had the opportunity to analyze a Java project from a SOLID Design Principles point of view using a Static Code Analyzer tool (e.g. STAN).
The last part of the presentation was set aside for strategies as well as tips & tricks regarding the productive way of approaching new projects or “legacy” ones.
More than 50 people took part in our event. For those of you who are interested in more info about the presentation you can download the slides at this link