× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



On Thu, Jul 7, 2011 at 9:55 AM, Joe Pluta <joepluta@xxxxxxxxxxxxxxxxx> wrote:
On 7/7/2011 8:38 AM, john e wrote:
But interesting that you say that OO programs are difficult
to change, and difficult to understand.This (adaptability
and understandability) is the prime selling point of OO.

First of all, let's be clear: OO is many different things to many
different people. (See <http://www.paulgraham.com/reesoo.html> for
one discussion.)

I would say the prime selling point of any paradigm is how well it
models the problems you are trying to solve. Some problems happen to
conceptually fit very nicely into an object-based model. For me, GUIs
seem to be quite naturally object-oriented. Back-end business logic
is often not a good fit for OO (though it conceivably could be, for
some businesses and for some programmers).

[Joe Pluta:]
It's my opinion.  Minor changes are easy in OO, and extending an
architecture is easy to do.  Major changes are hard.  If your initial
concept of the class hierarchy is wrong,  everything has to change.
Been there, done that many times.  The hype for OO is not BS, it's just
not a silver bullet.  I think OO languages perform better at modeling
static problems like generating HTML, and most businesses are
dynamic because their business rules change often.

I disagree. I think whether something is hard or easy to change is
mostly in the design. A *truly major* change is going to be hard in
any system. And a relatively minor change is going to be hard in a
system that isn't designed to accommodate it. (I would like to say
"any change is hard in a poorly designed system" but it depends on the
ways in which the system was poorly designed. A poorly designed
system might nonetheless be easy to add duct tape to, for example.)

I think well-designed OO systems are just as easy to make major
changes to as well-designed procedural systems, perhaps easier. Not
all OO systems are based on a "class hierarchy". At least for me,
that is not what OO is about. And as I mentioned earlier, I find GUIs
a natural fit for OO, and this is a highly dynamic problem, both in
terms of the event-driven nature of user input, and in the fact that
the specs and requirements for a GUI can change approximately as often
as the business rules behind it.

And I'm not the only one who thinks procedural languages have
their uses, Java may be the number one language, but C is
number 2, and there ain't no objects in C.

Ah, but who would use C for their business logic either? C is not
meant for things that RPG is meant for. That is not why C is still so
popular. C's popularity is not an argument for "procedural language"
popularity (or relevance or importance or what have you). C provides
no coattails for RPG to hang onto in a discussion comparing languages.

If your only point is that OO is no silver bullet, fine. But I don't
think anyone is arguing (seriously) that *everything* should be done
with OO languages, or even in an object-oriented way (regardless of
language).

Further, so-called OO languages are really just languages that happen
to provide explicit support for some set of OO mechanisms; these
languages do not define what OO is, and using such languages is not
the same thing as (nor is it even required for) OO programming.

John Y.

As an Amazon Associate we earn from qualifying purchases.

This thread ...

Follow-Ups:
Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.