The ADVANTAGE Of Object Oriented Software

Object-orientation is a method of structuring the data and logic in a computer program in a way that makes it easier for a programmer to accurately model real business entities and processes. For example in an accounts receivable program we might define a "Customer" object that has an "UpdateAccounts" method that automatically updates all the accounts linked to the customer. Then in the program's source code wherever we wish to ensure a customer's accounts are updated we can simply write a line of code that looks like this:

Customer.UpdateAccounts;

There are two reasons why this is advantageous. Firstly it allows a programmer to automate things with less lines of code than would otherwise be needed. Secondly it allows the logic to be easily understood if it ever needs altering. In other words it simplifies the process of writing and maintaining source code and lowers the cost of software development and maintenance.

However it is a sad and amazing fact that the advantages of object-orientation proved to be so seductive to programmers that they developed some very complicated technologies (COM, DCOM, SOM, CORBA, XML, SOAP, WSDL to name a few) to allow objects to be available to their programs even if they belonged in other programs, were written in other languages or resided on other computer systems. In reality this endeavour has had the opposite effect from what was intended and made software development more complex than it was before the change to object-orientation.

What used to be an enjoyable and productive occupation for a business programmer has become a nightmarish exercise to the point where many potential programmers now decide it's no longer worth the effort and they'd rather do something else. It has also had the effect of making software development so expensive it has become uneconomic for anyone except governments and large corporations (i.e. those with an unlimited supply of money.)

The good news is that it is actually not necessary for a business' information systems to be split into multiple programs on mutiple platforms in multiple languages. It is quite possible for an entire business system to be developed using a single object-oriented programming environment on a single platform in a single language allowing us to enjoy the true advantages of object-orientation.

Author:.

Matthew Jenkinson is an Enterprise Software Architect and Computer Programmer who has been writing and maintaining customized software for businesses for more than twenty years. He has an outstandingly successful track record in a broad range of industry sectors including finance, insurance, retail, pharmacy, food processing, manufacturing and electronics. Matthew's work at the sharp end of software development has given him a comprehensive insight into the misunderstandings that exists betwee...

Go Deeper | Website

Want More?

 
New Graphic
Subscriber Counter