sqrly

sqrly

SOLID – Dependency Inversion

High-Level classes (i.e.PlayerController) should not be directly dependant on specific Low-Level classes (i.e. EnemyBullet, EnemyRocket, EnemyLaser, …). Instead these High-Level Classes should be dependant on abstractions of these classes i.e. an Interface IProjectile. So in a nutshell: Use Interfaces to…

SOLID Principles for better Software-Architecture

SOLID is a acronym five fundamentals of software design which will improve the readability, maintainability and the extensibility of your code: – Single Responsibility– Open-Closed– Liskov Substitution– Interface Segregation– Dependency Inversion In this Blog-Post I want to give you an overview of the five SOLID –…

Coupling

Coupling is a measure of how dependant two systems are on one another. Tight coupling means that i.e. most classes of the PlayerController access different Classes of the UI. This has lots of downsides. For example if you need to…