From: pandit on
hai,

this is my very 1st post here. i don't know anything expect some Lisp,
one of my friends taught me Lisp.

i need to learn OOA-D 1st. so the question now is:

Can i learn OOA-D without learning Proecdural/Modular design 1st?

will that not handicap me?


( i am interested in C++, OOD & Templates and i do not want to learn C
1st, which is procedural. one of my friends, advised me to learn OOD
1st & then C++ but he has no idea on whether to learn procedural or
modular 1st as a solid-base of programming or OOD)

thanks

-- pandit

From: arnuld on
On Feb 20, 11:44 am, "pandit" <jala...(a)gmail.com> wrote:
> hai,
>
> this is my very 1st post here. i don't know anything expect some Lisp,
> one of my friends taught me Lisp.
>
> i need to learn OOA-D 1st. so the question now is:
>
> Can i learn OOA-D without learning Proecdural/Modular design 1st?
>
> will that not handicap me?
>
> ( i am interested in C++, OOD & Templates and i do not want to learn C
> 1st, which is procedural. one of my friends, advised me to learn OOD
> 1st & then C++ but he has no idea on whether to learn procedural or
> modular 1st as a solid-base of programming or OOD)
>
> thanks


you can read my post titled "struggling with design-paradigms".

BTW, i have also discussed the same with someone on my email. if you
want, i can send you the relevant email-communication.



From: pandit on
> you can read my post titled "struggling with design-paradigms".


yes, i read that one but it is ambiguous.

> BTW, i have also discussed the same with someone on my email. if you
> want, i can send you the relevant email-communication.

sure, if you can.

From: H. S. Lahman on
Responding to Pandit...

> this is my very 1st post here. i don't know anything expect some Lisp,
> one of my friends taught me Lisp.
>
> i need to learn OOA-D 1st. so the question now is:
>
> Can i learn OOA-D without learning Proecdural/Modular design 1st?
>
> will that not handicap me?

It will not handicap you. In fact, it is a distinct advantage. The OO
paradigm is fundamentally different than the traditional procedural
approaches. One cannot mix & match the two. A major problem that
procedural developers have when they convert to the OO paradigm is that
they essentially need to forget everything they learned about procedural
development.

> ( i am interested in C++, OOD & Templates and i do not want to learn C
> 1st, which is procedural. one of my friends, advised me to learn OOD
> 1st & then C++ but he has no idea on whether to learn procedural or
> modular 1st as a solid-base of programming or OOD)

Your friend is correct. All of the OOPLs are 3GLs so they make
substantial compromises with the hardware computational models for
things like procedural block structuring, stack-based scope, and
procedural message passing. (That is especially true for C++.) As a
result it is very tempting to overlay procedural thinking on the OOPLs
because syntactically they are procedural languages with added abstract
constructs on top.

In addition, the procedural approaches are much more intuitive for
algorithmic processing on computers because they grew up in academia
solving scientific problems. The OO paradigm works from the opposite end
of the spectrum by abstracting customer problem spaces rather than
hardware computational models. So it is not very intuitive if one has
already learned procedural development.

So get a good OOA/D book and learn the fundamentals of the OO paradigm
first. (The Books category of my blog has some guidelines for selecting
a good book.)


*************
There is nothing wrong with me that could
not be cured by a capful of Drano.

H. S. Lahman
hsl(a)pathfindermda.com
Pathfinder Solutions
http://www.pathfindermda.com
blog: http://pathfinderpeople.blogs.com/hslahman
"Model-Based Translation: The Next Step in Agile Development". Email
info(a)pathfindermda.com for your copy.
Pathfinder is hiring:
http://www.pathfindermda.com/about_us/careers_pos3.php.
(888)OOA-PATH



From: arnuld on
> In addition, the procedural approaches are much more intuitive for
> algorithmic processing on computers because they grew up in academia
> solving scientific problems. The OO paradigm works from the opposite end
> of the spectrum by abstracting customer problem spaces rather than
> hardware computational models. So it is not very intuitive if one has
> already learned procedural development.

Lahman, doesn't that mean: "a programmer will learn more about
programming from algorithms and procedural approach rather than from
OOD"

?


> So get a good OOA/D book and learn the fundamentals of the OO paradigm
> first. (The Books category of my blog has some guidelines for selecting
> a good book.)

personally, i found OOSC by Bertrand Meyer better. you agree here with
me, Lahman

;-)

thanks