This was posted to a flash list I'm on with the thread title "OOP
overkill?", hard to disagree with really....

"I think Gamma et al, summed it up nicely in their Design Patterns book:

"Designing object-oriented software is hard and designing reusable 
object-oriented software is even harder."

But the problem is not really with object-oriented programming and 
design. You can strike out the words object-oriented from that sentence 
and I think you end up with a simple truth:

"Designing software is hard and designing reusable software is even harder."

So the problem is designing and developing computer programs regardless 
of if you call it multimedia scripting or something else. The history of 
computer science is full of different paradigms for designing and coding 
programs. The various paradigms all attempted to define a good level of 
abstraction on which a human problem can be broken down into separate 
smaller problems and dealt with in a way that would ultimately result in 
working and useful machine code. And each paradigm came with it own 
theory, set of accepted practices, and lore that its adherents tried to 
teach in order to improve the practice of computer programming.

Given the complexity of writing useful software of good quality, good 
development paradigms (theory, practice, and lore) are an absolute 
requirement for success. Unfortunately, software development in today's 
world requires working with more than one paradigm - or put another way 
- there is no one paradigm that can be used effectively to solve all the 
important design and development problems a developer will face in his 
or her lifetime. Instead, we use a bunch of them such as the relational 
model, state hierarchies/machines, object-oriented design and 
development methods etc...

Each paradigm is large and complex, often essential to get a certain 
level of work done, and requires time and patience to learn. There are a 
lot of possible reasons that OOP may seem too difficult to learn and of 
questionable value. For example if you are trying to apply it to 
problems it wasn't designed to solve, because you haven't learned it 
well enough yet to be efficient, or because it is being shoved down your 
throat as some kind of panacea that will do everything all that SPAM we 
receive promises...

I think OOP is a really useful programming discipline/paradigm that is 
especially valuable for medium to large software development projects. 
The only problem I have with OOP is when people mistake a useful 
paradigm for a religion. Don't use it if you don't want and need it in 
small scale projects and don't use it if you are not prepared to spend 
some serious time learning and working within the paradigm that is OOP.

My two cents...
-Brian"

------------------------------------------------------------------ 
Adrian Lynch 
Web Application Developer 
Thoughtbubble Ltd 
Full Service Agency
------------------------------------------------------------------ 
<http://www.thoughtbubble.com>
Tel: +44 (0) 20 7387 8890 (ex. 23)
Fax: +44 (0) 20 7383 2220
------------------------------------------------------------------ 
The information in this email and in any attachments is confidential and
intended solely for the attention and use of the named addressee(s). Any
views or opinions presented are solely those of the author and do not
necessarily represent those of Thoughtbubble. This information may be
subject to legal, professional or other privilege and further distribution
of it is strictly prohibited without our authority. If you are not the
intended recipient, you are not authorised to disclose, copy, distribute, or
retain this message. Please notify us on +44 (0)207 387 8890.


-- 
** Archive: http://www.mail-archive.com/dev%40lists.cfdeveloper.co.uk/

To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
For human help, e-mail: [EMAIL PROTECTED]

Reply via email to