Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

oodesign ?

0 views
Skip to first unread message

Stahl Michael

unread,
Sep 1, 2004, 3:41:52 PM9/1/04
to
What is object orientaiton? Would it make sense to attempt to create a
completely new ide application for it? This would have to load and edit
objects (dlls) dynamically at runtime, jumping into it and even recurse
freely in between then. Am i getting feverish ?
--

Michael Stahl, Mannheim
far...@t-online.de
http://www.boskoop.privat.t-online.de/

Adam Guy

unread,
Sep 4, 2004, 1:13:30 AM9/4/04
to
Please immediately do the following:

1) turn off your computer
2) throw it away
3) take up gardening or basket weaving.

Good luck.

"Stahl Michael" <far...@t-online.de> wrote in message
news:ch58nl$m07$07$1...@news.t-online.com...

Jurko Gospodnetić

unread,
Sep 6, 2004, 3:39:04 AM9/6/04
to
"Adam Guy" <ag...@someco.de> wrote in message
news:41394d43$1...@newsgroups.borland.com...

> Please immediately do the following:
>
> 1) turn off your computer
> 2) throw it away
> 3) take up gardening or basket weaving.

:-)))


Alisdair Meredith (TeamB)

unread,
Sep 6, 2004, 6:11:27 AM9/6/04
to
Adam Guy wrote:

> Please immediately do the following:
>
> 1) turn off your computer
> 2) throw it away
> 3) take up gardening or basket weaving.

Not terribly useful advice, everyone has to start learning somewhere.

I see the attempt at humour, but imagine how you would feel if this was
the only reply one of your questions got?

AlisdairM(TeamB)

Alisdair Meredith (TeamB)

unread,
Sep 6, 2004, 6:29:33 AM9/6/04
to
Stahl Michael wrote:

> What is object orientaiton?

A very hard question to answer, because you will probably get as many
definitions as people you ask (if not more!)

Generally. Object Orientation is a way of writing software that tries
to work in a way similar to how the human mind thinks. Rather than
dealing with Data and Code, we deal with 'Objects'. An object combines
both the data and the code that deal with the same concept, and
different objects work together to make your software.

Each object should be a simple idea, so you can describe it in terms of
it attributes (data, eg. colour) and its behaviour (code, eg Draw() )

That is pretty much the common base of all Object Oriented systems, but
there are a few extra features most people expect.

First, objects only communicate by sending messages to each other,
there is no direct access to the internal data of an object. This
principle is called often 'encapsulation' and is a huge help in
designing large, complex systems that are stable against continually
evolving code.
"sending messages" often reduces to calling object methods these days,
or member functions in C++.

Another common feature is inheritance. I can derive a more specialised
version of an object by basing it on an existing object, and
refining/adding the special behaviour unique to the new one. Often,
this is implemented in terms of classes, which describe the object to
the compiler, rather than directly on 'live' objects at runtime.
However some modern languages, such as Python, allow exactly this sort
of runtime specialization as well.

The third common feature is generally called 'polymophism' and is
commonly implemented as a 'virtual function'. This confusing name
basically means that when you create a more specialised object (or
class) you can change how a method works, 'overide' it. Then code
written to deal with the base object type, when handed your more
specialized object, will magically call the correct overiden version of
your function.

System lacking virtual functions (and sometimes inheritance) are often
called 'object based' rather than object oriented. However, there is
no hard and fast definition for either of these terms.

And just to thoroughly confuse matters <g> although polymorphism is
usually thought of as a runtime feature - your correct function is
magically called at runtime, C++ also features compile time
polymorphism through its template syntax.

> Would it make sense to attempt to create a completely new ide
> application for it?

It made so much sense it has been done many times <g> The Smalltalk
environment invented many of these ideas over 20 years ago, and the
Delphi/C++Builder IDE is an excellent demonstration of these ideas
today.

> This would have to load and edit objects (dlls) dynamically at
> runtime, jumping into it and even recurse freely in between then.
> Am i getting feverish ? --

Possibly <g> I would take a look at some Microsoft technologies here,
specifically ActiveX/COM, or the new(ish) .NET platform.

I would also try a little research on some of these ideas with Google.
There are a number of good sites out there that explain these ideas far
better than I ever will, especialliy in the small space of a newsgroup
posting <g>
Good luck!

AlisdairM(TeamB)

Stuart Borden

unread,
Oct 4, 2004, 12:32:51 AM10/4/04
to
On Thu, 30 Sep 2004 23:32:57 +0200, "AinO" <n...@spam.please> wrote:

<snip>
>At the end of the day (i started programming in '82) 'OO' design methodology
>stalled innovation.
>
<snip>

I started in '80. Remember Supercalc? Ever try running it on a P4?
You'll be amazed at the performance...

Even more noticeable -- Try old DOS AutoCAD on a P4 (in DOS, of
course).

I think the problem is not the OO methodology, but rather the
implementations thereof. Especially with the advent of "Visual???"
stuff.

Too many use "OO" tools as a crutch for poor/no program techniques
saying, "its OO, so it must be OK."

But be that as it may, you do not need C++ to implement OO
programming. Just good programming practices.

$0.02

Stuart B.

AinO

unread,
Oct 4, 2004, 9:10:25 AM10/4/04
to
> I think the problem is not the OO methodology, but rather the
> implementations thereof. Especially with the advent of "Visual???"
> stuff.
>

you're right off course, wasn't responding with a rested mind. end of
discussion.
(my boss wants me to migrate to .NET)

AinO


0 new messages