Tag: code quality

Dependency Inversion Principle

The Dependency Inversion Principle is a component of The SOLID Principles. These principles set out simple rules to follow that allow us to create maintainable and easily extensible codebases. The dependency inversion principle states that any entity should depend on abstractions rather than concrete implementations. This basically means that when…

Continue Reading Dependency Inversion Principle

Interface Segregation Principle

The Interface Segregation Principle is a component of The SOLID Principles. The SOLID principles are useful tips and rules to follow when writing software and code to create a maintainable and easily extensible codebase. The interface segregation principle states that any object or class should not be forced to override…

Continue Reading Interface Segregation Principle

Liskov Substitution Principle

The Liskov Substitution Principle is a component of The SOLID Principles which helps you create maintainable and extensible code. This principle states that any class should be able to be substituted for any of its subclasses without any issues. This basically just means that if you have a parent class…

Continue Reading Liskov Substitution Principle

Open-Closed Principle

The Open-Closed Principle is a component of The SOLID Principles. These principles can help you write software that is easy to extend and maintain whilst also avoiding code smells and bad design in your codebase. The open-closed principle states that any object should be open for extension but closed for…

Continue Reading Open-Closed Principle

Single Responsibility Principle (SRP)

The Single Responsibility Principle (SRP) is one of the aspects of The SOLID Principles. It states that every class or object should have one purpose, one responsibility and effectively one reason for existence. This principle is concerned mainly with object-orientated programming but it can and should be thought about at…

Continue Reading Single Responsibility Principle (SRP)

The SOLID Principles

The SOLID principles are a set of 5 rules to follow for Object-Orientated Programming (OOP). These rules or principles can be used to create software that is easy to extend and maintain while avoiding code smells and allowing simple refactoring. Obviously, these 5 principles are not a silver bullet and…

Continue Reading The SOLID Principles

What is UML?

Unified Modeling Language, or UML, is a way of visualising systems. There are different types of UML diagrams and they can used to visual how a computer program is structured, how a user interacts with a program, structure of a database, and much more. Basically UML can be simplified as…

Continue Reading What is UML?

Unit and Integration Tests Explained

Unit and integration tests are two types of software level tests. Software level tests involve writing additional code to test existing code. The difference between unit and integration tests is what you would test within each individual test; how much of the software you would test within any one test…

Continue Reading Unit and Integration Tests Explained

How Do You Test Software?

Testing software verifies that the software works as you expect and as you want it to function. Testing is vital to the full software developer life cycle. Without testing software you write you cannot confirm that is functions as you expect, reading and understanding what the code should be doing…

Continue Reading How Do You Test Software?

What are Design Patterns?

A design pattern is way to lay out or organise code in a way to solve a certain problem. Design patterns are established ways in which to organise code, so it makes the code not only easier to explain to other developers but also solves a problem. They are commonly…

Continue Reading What are Design Patterns?