struggling with Design -Paradigms - Object
This is a discussion on struggling with Design -Paradigms - Object ; hai all,
1st of all, thanks for the replies, to my earlier post, and now with
your help (the comp.object folks :-) the confusion has gone, i am
very clear on my goals but still i have some difficulties. i ...
-
struggling with Design -Paradigms
hai all,
1st of all, thanks for the replies, to my earlier post, and now with
your help (the comp.object folks :-) the confusion has gone, i am
very clear on my goals but still i have some difficulties. i will be
brief:
i do understand the meaning of variables,objects,function as i have
done some Lisp, so i can say i am not a complete newbie. yes, i have
written some trivial programes too and i can understand books written
for programmers (like Programming Ruby) but cannot understand books
written for for much experienced programmers (like Stroustrup's TC++PL
3/e). since i have never done any professional coding at some company
so i consider myself a beginner.i want to go directly to OOD (without
learning any anything else like procedural paradigm or algorithms).
Is this right way?
i will be looking for a job using C++ but searching the archives of
this newsgroup tells me that is not a good idea. hence, is it OK to
go to through path:
OOA-D -> OOP using Eiffel/Ruby -> C++
?
thanks
-
Re: struggling with Design -Paradigms
In article <1171206968.805646.45650{}s48g2000cws.googlegroups.com>,
"arnuld" <geek.arnuld{}> wrote:
> hai all,
>
> 1st of all, thanks for the replies, to my earlier post, and now with
> your help (the comp.object folks :-) the confusion has gone, i am
> very clear on my goals but still i have some difficulties. i will be
> brief:
>
> i do understand the meaning of variables,objects,function as i have
> done some Lisp, so i can say i am not a complete newbie. yes, i have
> written some trivial programes too and i can understand books written
> for programmers (like Programming Ruby) but cannot understand books
> written for for much experienced programmers (like Stroustrup's TC++PL
> 3/e). since i have never done any professional coding at some company
> so i consider myself a beginner.i want to go directly to OOD (without
> learning any anything else like procedural paradigm or algorithms).
>
> Is this right way?
>
> i will be looking for a job using C++ but searching the archives of
> this newsgroup tells me that is not a good idea. hence, is it OK to
> go to through path:
>
> OOA-D -> OOP using Eiffel/Ruby -> C++
>
> ?
http://www.parashift.com/c++-faq-lit....html#faq-28.3
-
Re: struggling with Design -Paradigms
> http://www.parashift.com/c++-faq-lit....html#faq-28.3
Daniel, i read that and that is not working for me :-(
[OT]
i am trying to learn C++ since Nov, 2006. it has been 3 months since
then and i am not even able to understand the Desk calculator
programme in chapter 6. i discussed it at "comp.lang.c++" and that did
not work for me. when i tried to understand "Structures" in section
5.7, i hit with "pointers to char", totally out of my head :-(, and i
have only tried to learn the procedural aspect of C++, the "class
concept" never made any sense to me, so i always avoided it in C++. i
think one can not learn C++ directly, one needs to understand
"pointers" (may be "structures" too) & "OOD" before he jumps to C++.
[/OT]
BTW, it was quite a good moment when i saw the "C++ FAQ" link. you are
still trying to help, nice Daniel T
:-)
-
Re: struggling with Design -Paradigms
"arnuld" <geek.arnuld{}> wrote:
> > http://www.parashift.com/c++-faq-lit....html#faq-28.3
>
>
> Daniel, i read that and that is not working for me :-(
>
> [OT]
> i am trying to learn C++ since Nov, 2006. it has been 3 months since
> then and i am not even able to understand the Desk calculator
> programme in chapter 6. i discussed it at "comp.lang.c++" and that did
> not work for me. when i tried to understand "Structures" in section
> 5.7, i hit with "pointers to char", totally out of my head :-(, and i
> have only tried to learn the procedural aspect of C++, the "class
> concept" never made any sense to me, so i always avoided it in C++. i
> think one can not learn C++ directly, one needs to understand
> "pointers" (may be "structures" too) & "OOD" before he jumps to C++.
> [/OT]
Please understand, the concept of pointers are almost unique to C and
C++, all other languages hide them behind some sort of abstraction. So
the very thing you are having the most trouble with is the thing that
has nothing to do with OOD.
When I first started learning C++, I already knew C (thus I understood
pointers and structures.) Despite that fact, it still took me 3 months
of solid study before I could even begin to understand OO Design. It's a
huge complex topic.
I believe that you will find it impossible to learn OO Design unless you
have a solid understanding of a particular language to express designs
in. If your goal is to learn C++, then that is the language you should
work on. If your goal is to learn OO Design, then you can certainly
learn any of several languages, but your designs will come out different
than they would in C++, and as the FAQ says, there will be must to
unlearn.
BTW, I would not call Stroustrup's book "advanced" but it is succinct. I
wouldn't recommend it for someone trying to learn the language without a
tutor or mentor of some sort.
I have often tutored people through email and IM. If you would like,
send me an email and maybe I can help you work through the book. If you
do send me an email, be sure to put the word "sheltie" in the subject or
my spam filter will trash it.
-
Re: struggling with Design -Paradigms
"Daniel T." <daniel_t{}earthlink.net> writes:
>the concept of pointers are almost unique to C and C++,
Java also has a concept of pointers.
»(...) reference values (...) are pointers«
JLS3, 4.3.1.
http://java.sun.com/docs/books/jls/t...ues.html#4.3.1
(You might argue that the Java concept called »pointer«
is not the same as the C concept called »pointer«.
But the assertion that the »C concept pointer is unique to C«
is a tautology, because it is contained in the notion that the
»C concept pointer« is unique to C.)
-
Re: struggling with Design -Paradigms
ram{}zedat.fu-berlin.de (Stefan Ram) wrote:
> "Daniel T." <daniel_t{}earthlink.net> writes:
>
> > the concept of pointers are almost unique to C and C++,
>
> Java also has a concept of pointers.
>
> »(...) reference values (...) are pointers«
> JLS3, 4.3.1.
>
> http://java.sun.com/docs/books/jls/t...ues.html#4.3.1
Given that structures are gone, and arrays and strings are objects,
the need for pointers to these constructs goes away. Thus, Java has
no pointer data types.
http://java.sun.com/docs/white/langenv/Simple.doc2.html
There is no need to argue the point though. All OO languages have
something resembling C++ pointers though they generally wrap them in
some sort of abstraction.
As you say, I could argue that only C/C++ have C/C++ pointers and
frankly I will. I suspect the OP doesn't, or wouldn't, have a problem
with Java references to the extent that he has with C++ pointers
because, frankly, Java references aren't as powerful/dangerous
(depending on your perspective) as C++ pointers.
That being as it may, The rest of my post still holds. The OP needs some
way to translate his designs into working code so he can test his
understanding of the concepts. That means he must first learn a language
(or one of the translation systems HS espouses) before he has any change
of learning OO design.
The OP's proposed path to learning C++ will cause him problems because
there are many things that he will have to un-learn before he can take
the final step.
-
Re: struggling with Design -Paradigms
On Feb 11, 7:16 am, "arnuld" <geek.arn...{}> wrote:
> hai all,
>
> 1st of all, thanks for the replies, to my earlier post, and now with
> your help (the comp.object folks :-) the confusion has gone, i am
> very clear on my goals but still i have some difficulties. i will be
> brief:
>
> i do understand the meaning of variables,objects,function as i have
> done some Lisp, so i can say i am not a complete newbie. yes, i have
> written some trivial programes too and i can understand books written
> for programmers (like Programming Ruby) but cannot understand books
> written for for much experienced programmers (like Stroustrup's TC++PL
> 3/e). since i have never done any professional coding at some company
> so i consider myself a beginner.i want to go directly to OOD (without
> learning any anything else like procedural paradigm or algorithms).
>
> Is this right way?
No! Procedural programming is quite useful. Even most OO fans agree
that procedural has its places. And, learn relational theory and SQL.
>
> i will be looking for a job using C++ but searching the archives of
> this newsgroup tells me that is not a good idea. hence, is it OK to
> go to through path:
>
> OOA-D -> OOP using Eiffel/Ruby -> C++
>
> ?
>
> thanks
-T-
-
Re: struggling with Design -Paradigms
In article <daniel_t-3D5F9A.15324911022007{}news.west.earthlink.net>,
daniel_t{}earthlink.net says...
[ ... ]
> Please understand, the concept of pointers are almost unique to C and
> C++, all other languages hide them behind some sort of abstraction.
Some other languages do -- others (e.g. Pascal) make them just as
visible as C and C++ do. Languages that attempt to hide them do so to
differing degrees as well. Lisp, for one example, keeps them hidden
pretty thoroughly. Java officially says it doesn't have any pointers,
but in reality, its pointers are only _barely_ hidden at all -- for
example, there are obvious differences in how you normally use native
types versus instances of objects, almost entirely because the latter
are really pointers to objects so you have to explicitly allocate them
dynamically.
You're definitely right that pointers, per se, have little to do with
object orientation though. They're purely a mechanism, with little
relationship to design.
--
Later,
Jerry.
The universe is a figment of its own imagination.
-
Re: struggling with Design -Paradigms
"topmind" <topmind{}technologist.com> wrote:
> Procedural programming is quite useful. Even most OO fans agree
> that procedural has its places. And, learn relational theory and SQL.
Agreed.
-
Re: struggling with Design -Paradigms
I'll just second a bunch of stuff the others have said. If pointers
are obscure to you at this point, don't worry, newer languages don't
have them (or at least "deprecate" them), and even in C++ they are
generally dispensable. Heck, Lisp is the king of pointer languages,
and you didn't even know it! If you really want to understand, maybe
you should do something retro, like learn assembler. Once upon a time
that was every programmer's starting point, and fancy languages like
Fortran came later (I have an antique book that says so, therefore it
must be true!).
Just wanted to note one paradigmatic thing about programming
generally, it's a common phenomenon for someone to struggle with a new
technology, just plain not getting it, until one day "the light goes
on!". Been there, done that, and more than once. But on the positive
side, there are only so many basic ideas at work in the whole friggin'
field, and if you have a little natural talent and sufficient
dedication, you'll get through the whole thing at some point.
Good luck!
J.
On 11 Feb 2007 10:48:28 -0800, "arnuld" <geek.arnuld{}> wrote:
>> http://www.parashift.com/c++-faq-lit....html#faq-28.3
>
>
>Daniel, i read that and that is not working for me :-(
>
>[OT]
>i am trying to learn C++ since Nov, 2006. it has been 3 months since
>then and i am not even able to understand the Desk calculator
>programme in chapter 6. i discussed it at "comp.lang.c++" and that did
>not work for me. when i tried to understand "Structures" in section
>5.7, i hit with "pointers to char", totally out of my head :-(, and i
>have only tried to learn the procedural aspect of C++, the "class
>concept" never made any sense to me, so i always avoided it in C++. i
>think one can not learn C++ directly, one needs to understand
>"pointers" (may be "structures" too) & "OOD" before he jumps to C++.
>[/OT]
>
>BTW, it was quite a good moment when i saw the "C++ FAQ" link. you are
>still trying to help, nice Daniel T
>
>:-)
Similar Threads
-
By Application Development in forum C
Replies: 9
Last Post: 08-26-2007, 05:12 AM
-
By Application Development in forum TCL
Replies: 10
Last Post: 08-03-2007, 07:23 AM
-
By Application Development in forum ADO DAO RDO RDS
Replies: 0
Last Post: 07-02-2004, 10:29 AM
-
By Application Development in forum Graphics
Replies: 3
Last Post: 05-16-2004, 04:47 AM
-
By Application Development in forum Inetserver
Replies: 1
Last Post: 03-05-2004, 01:08 PM