The Concept of Class in Software
I keep trying to make Software Development applicable to Human Development. No easy job.
Back in the Nineties, when I was working in Silicon Valley, Object-Oriented Programming (OOP) became popular. And twenty years later, I am taking it up again – reading a book on UML, that is also about objects.
A key concept here is that of class. A class has its own data and processes – things it owns, and things it can do..A program carefully defines how each part of the program affects the other parts A lot of testing is required to make sure the many objects behave properly. Quite often, they do not.
In a way, that is similar to a person in society. Persons, during the Enlightenment, had human rights (things they could do) and property rights (things they owned).
The government controlled what people could do, and could not do, to others. For example, they could not take other people’s property. In Software, this is enforced by the Operating System – that keeps bad software from crashing the Computer.
The legal system is supposed to do this for people – but as the Great Depression of 2008 showed – it sometimes does not.