Qafoo GmbH - passion for software quality

To stand apart, with confidence in one's own beliefs, is one of the greatest challenges for an innovator. By providing inspiration, our expertise helps you fly further and faster.

Object Oriented Design

German Version

To develop software which will last longer then a simple prototype we must ensure its extensibility, maintainability and testability. After all requirements will change over time and new features will always be added to software.

To be able to adapt to changed requirements and integrate new features the software must be extensible. To fix bugs, which will always occur over time, the source code should be easy to read and understand, which means it is maintainable. Even new developers should be able to quickly understand the source code and develop new features. In this case it helps a lot to follow a set of common patterns.

What Can Be Done?

There are sets of established principles of software design like S.O.L.I.D. and Clean Code you can consider an industry standard. When following these principles your code will not only be maintainable and extensible but also testable code and new developers can easily find their way in your code base. A common language about code structures also helps communicating about code.

Developers should learn about these principles and the ideas behind them. Using these principles to solve real code issues will quickly lead to developers realizing this is a more effective way of coding – especially for the long term development of software. A workshop introducing the principles of Object Oriented Software Design usually covers the following topics:

  • Understanding the software design principles
  • Design a new software component following the principles
  • Understand how the design principles lead to testable code
  • Define common principles for the current team to use
  • Find a way to migrate existing software to follow design principles
  • Introduce static code analysis to look for violations

Software following a unified set of principles is far easier to understand and development speed will increase.

Stay up to Date With Our Newsletter

We are offering a newsletter with technical articles you can register for right now.

We Can Help

Qafoo has years of experience developing applications following the mentioned software design principles – we know how those principles can be used in real world applications and enhance those. We helped multiple companies migrating their code base to those principles and we can do the same for you.

The longer you wait and the longer developers write code not following any established patterns the more code will be produced which is hard to read, maintain and extend. Code following only a set of patterns defined internally is better but on-boarding new developers will still be a hard task. Teach you developers now on how to develop clean code.

You might want to consider looking at our refactoring and testing workshops which are a great complement to this workshop.


Clients who already trust Qafoo.


Technical insights in our blog.


Presentations we gave at conferences.

Related Posts From Our Blog

    Get In Touch!