struggling with pointers, OOD and C++

Discussion in 'C++' started by arnuld, Feb 12, 2007.

  1. arnuld

    arnuld Guest

    [ this post was started from "comp.object" titled "struggling with
    Design-Paradigms" but witht he help of Daniel T. it drifted towards a
    meaningful path to learn C++. i was helped, so to help other newbies,
    i am posting it here :) ]

    thanks
     
    arnuld, Feb 12, 2007
    #1
    1. Advertisements

  2. arnuld

    arnuld Guest

    [posted by "arnuld"]


    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
     
    arnuld, Feb 12, 2007
    #2
    1. Advertisements

  3. arnuld

    arnuld Guest

    arnuld, Feb 12, 2007
    #3
  4. arnuld

    arnuld Guest

    [posted by arnuld]
    Daniel, i read that and that is not working for me :-(


    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 program
    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++.

    BTW, it was quite a good moment when i saw the "C++ FAQ" link. you are
    still trying to help, nice Daniel T

    :)
     
    arnuld, Feb 12, 2007
    #4
  5. arnuld

    arnuld Guest

    -- [posted by "Daniel T."] ----


    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.
     
    arnuld, Feb 12, 2007
    #5
  6. arnuld

    arnuld Guest

    -- [posted by "Daniel T."] --
    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.
     
    arnuld, Feb 12, 2007
    #6
  7. arnuld

    arnuld Guest

    [posted by "arnuld"]



    hai Daniel,

    as you said, that i can send you an email, for tutoring me. so, i am
    writing this to you:

    i have downloaded an "illegal .chm" version of Accelerated C++ as this
    book is not available in my country :-( & will be very expensive for
    me to buy from amazon or blackwell etc.

    BTW, "Accelerted C++" (ACPP) makes sense to me :) i can understand
    it.

    you literally gave me an electric-shock by saying this. i learnt Lisp
    before and i know, Lisp compiles to assembly code directly, unlike
    Eiffel.

    does Lisp also hides pointers?

    if it is true, then it will be an eye opening experience for me.

    1. in my case, what to do with pointers?

    2. you say my problem has nothing to do with OOD and then you say, for
    you, it took 3 months of solid study before you started to understand
    OOD. you also say it is huge complex topic.


    so i guess, i have choose this path:

    pointers/struct in C++ -> an OOD book with C++

    (OOD book e.g Booch/Rubaugh/page-Jones etc.)

    right?


    ok, i seem to agree and when you make classes, whether in C++ or Lisp,
    they do not make any sense to me. i could write the same program by
    breaking it into functions making it easier to understand (though the
    program will be larger in code-size, sometimes, not all of the times)

    i know & learning path will be "a long time". id o not want to do
    that, how can you help me?

    ok, as i said, ACPP is working for me
    that is why i sent you this email
     
    arnuld, Feb 12, 2007
    #7
  8. I would also recommend the following FREE resource for learning C++. The
    entire book is available on the web.

    http://www.mindview.net/Books/TICPP/ThinkingInCPP2e.html

    -dr
     
    Dave Rahardja, Feb 12, 2007
    #8
  9. arnuld

    arnuld Guest

    I would also recommend the following FREE resource for learning C++. The
    thanks and i have a hard-copy of that. trust me, Eckel uses heavy C to
    teach C++, NO nothing wrong with that, actually, he uses C to explain
    the difference with C++, the most clearly presented difference i have
    ever seen but i do not know C :-(
     
    arnuld, Feb 12, 2007
    #9
  10. arnuld

    Grizlyk Guest

    "pascal" has pointers, and even introducing "forward type reference" in
    order to make lists and other basic structures with the help of pointers.
     
    Grizlyk, Feb 12, 2007
    #10
  11. arnuld

    nw Guest

    i have downloaded an "illegal .chm" version of Accelerated C++ as this
    I found Accelerated C++ to be a excellent book. Work your way through
    it and it should giving you a solid grounding in C++.
     
    nw, Feb 14, 2007
    #11
    1. Advertisements

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.