What is an Object?

Much present day commercial software development – probably the majority of it – claims to be object oriented, and at the centre of object oriented software is the object. So, what is an object? Unfortunately, the word object seems to have joined the ranks of the buzzwords. It seems to have become one of those Read more…

A Very Simple Introduction to Unit Testing

The idea of unit testing is to write code that automatically tests other code, and that can be executed repeatedly. It has grown in popularity over the last few years, its profile having been raised by the test-driven development (TDD) practised within the agile development community. Note that unit testing is not, in itself, test Read more…

Updating Object Properties While Respecting Encapsulation

This article is a follow-up to my previous article Accessing Object Properties While Respecting Encapsulation. In that article I looked at making object properties accessible while respecting encapsulation. In this article I will look at how to design operations on objects in order to update property values while respecting encapsulation – that is, without resorting Read more…

Accessing Object Properties While Respecting Encapsulation

Despite object oriented programming having been mainstream for well over a decade now, there are still concepts associated with it that are sources of confusion for its practitioners. It seems to me that, unfortunately, easily available guidance is still in short supply. One source of problems is this: how should an object should make information Read more…

In an Agile World, XP Can Mean Extreme Prejudice

The agile approach to software development is all the rage these days. This must be a good thing because when handled well, the flexibility agile methods afford makes for much greater cost effectiveness, for example: Changes in the business requirements can be handled right up to the very late stages of development Iterative development, and Read more…