Category: Code Quality

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

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?

What is Refactoring?

Refactoring is the process of changing code so that is functions in the same way. Refactoring is usually used to clean code up and make it more readable without effecting the functionality of the code. Testing can be used to verify the process of refactoring, and to ensure that the…

Continue Reading What is Refactoring?