How to solidify our C++ knowledge?

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • NAU programmers

    #1

    How to solidify our C++ knowledge?

    Hey folks,
    Me and my friend are beginning our 3rd year at Computer engineering
    faculty in a university in Kiev-Ukraine . Unfortunately, there aren't
    any good professors in our university, and the level of education here
    still goes back to Soviet Union time. Me and my friend are fond of
    programming and have made up our mind to study on our own. Without
    having nay guide teacher, we started out with C, read few books in C
    for about 9 months. Then we moved to C++. For the past 6 months, we've
    been studying different C++ books such as: Osborne complete reference;
    Teach yourself C++ in 21 Days; Stroustrop C++ book. But our problem is
    that we have no one to guide us in our studies. We don't know how to
    solidify our knowledge in C++? Should we get a project and work on it?
    Suppose if we even worked on a C++ projected, there's no one to look
    at our code ans correct us! I wonder if there's a book out there that
    has some projects of C++ with some guide-lines. We can't cooperate
    with any company either, Because in Kiev, either you're a professional
    C++ programmer and you make a good money, or you're nobody! They don't
    let us work as summer intern or something like that.
    We apppreciate you taking time and reading our email, and guiding us
    how to solidify our knowledge. We know lot of theories, but haven't
    programmed that much. one more thing is that in Kiev, they require
    from you to know 4 or 5 languages including: C/C++, Java, Visual C+
    +, .NET, SQL and so on. But how can we learn all that during 4 years
    of our Bachelor degree? We are already beginning the 3rd year, and all
    we know is C and C++ without any experience in coding!

    our questions:
    We don't know how to solidify our knowledge in C++? Should we get a
    project and work on it?
    I wonder if there's a book out there that has some projects of C++
    with some guide-lines.

    Is there a special way of learning all of these languages I mentioned
    above? We're planning to spend another year on C++, do you think it's
    a right decision?

    Thank you for your help!
  • =?UTF-8?B?RXJpayBXaWtzdHLDtm0=?=

    #2
    Re: How to solidify our C++ knowledge?

    On 2008-08-23 09:46, NAU programmers wrote:
    Hey folks,
    Me and my friend are beginning our 3rd year at Computer engineering
    faculty in a university in Kiev-Ukraine . Unfortunately, there aren't
    any good professors in our university, and the level of education here
    still goes back to Soviet Union time. Me and my friend are fond of
    programming and have made up our mind to study on our own. Without
    having nay guide teacher, we started out with C, read few books in C
    for about 9 months. Then we moved to C++. For the past 6 months, we've
    been studying different C++ books such as: Osborne complete reference;
    Teach yourself C++ in 21 Days; Stroustrop C++ book. But our problem is
    that we have no one to guide us in our studies. We don't know how to
    solidify our knowledge in C++? Should we get a project and work on it?
    Suppose if we even worked on a C++ projected, there's no one to look
    at our code ans correct us! I wonder if there's a book out there that
    has some projects of C++ with some guide-lines. We can't cooperate
    with any company either, Because in Kiev, either you're a professional
    C++ programmer and you make a good money, or you're nobody! They don't
    let us work as summer intern or something like that.
    We apppreciate you taking time and reading our email, and guiding us
    how to solidify our knowledge. We know lot of theories, but haven't
    programmed that much. one more thing is that in Kiev, they require
    from you to know 4 or 5 languages including: C/C++, Java, Visual C+
    +, .NET, SQL and so on. But how can we learn all that during 4 years
    of our Bachelor degree? We are already beginning the 3rd year, and all
    we know is C and C++ without any experience in coding!
    >
    our questions:
    We don't know how to solidify our knowledge in C++? Should we get a
    project and work on it?
    I wonder if there's a book out there that has some projects of C++
    with some guide-lines.
    A project is always a good idea, start by doing the exercises in "The
    C++ Programming Langauge", which range from small and easy to large and
    advanced; that should give you a good foundation to stand on, when
    moving on to real projects. To find a real project check out open source
    hosting sites such as SourceForge and find a project you find
    interesting. Start by learning the code and getting familiar with their
    ways of working, then slowly start contributing (finding and fixing
    bugs, then add a few small features and work your way up).
    Is there a special way of learning all of these languages I mentioned
    above? We're planning to spend another year on C++, do you think it's
    a right decision?
    C, C++, Java, and C# are all quite similar. If you master one of them
    you should be able to learn enough to be productive in the other
    languages by reading a book or taking a quick course. SQL is of course a
    bit different but again you can become productive if you read a book or
    two. Learning Visual C++ and .Net can take a bit more time since it is
    more about knowing libraries/framework.

    My point is that no serious company will expect you to really know all
    of these languages, they expect you to know one or two and have some
    knowledge in the others. If they expect you to know SQL and have some
    proficiency in the others you will probably not be employed, but if they
    want you to know C++ your chances are better.

    Of course, knowing all the programming languages in the world does not
    make you a good programmer, so spend some time to study other, relevant
    subjects such as object-oriented design, design-patterns,
    datastructures, software engineering, etc.

    --
    Erik Wikström

    Comment

    • Gennaro Prota

      #3
      Re: How to solidify our C++ knowledge?

      Erik Wikström wrote:
      On 2008-08-23 09:46, NAU programmers wrote:
      >Hey folks,
      >Me and my friend are beginning our 3rd year at Computer engineering
      >faculty in a university in Kiev-Ukraine . Unfortunately, there aren't
      >any good professors in our university, and the level of education here
      >still goes back to Soviet Union time. Me and my friend are fond of
      >programming and have made up our mind to study on our own. Without
      >having nay guide teacher, we started out with C, read few books in C
      >for about 9 months. Then we moved to C++. For the past 6 months, we've
      >been studying different C++ books such as: Osborne complete reference;
      >Teach yourself C++ in 21 Days; Stroustrop C++ book. But our problem is
      >that we have no one to guide us in our studies. We don't know how to
      >solidify our knowledge in C++? Should we get a project and work on it?
      >Suppose if we even worked on a C++ projected, there's no one to look
      >at our code ans correct us! I wonder if there's a book out there that
      >has some projects of C++ with some guide-lines. We can't cooperate
      >with any company either, Because in Kiev, either you're a professional
      >C++ programmer and you make a good money, or you're nobody! They don't
      >let us work as summer intern or something like that.
      >We apppreciate you taking time and reading our email, and guiding us
      >how to solidify our knowledge. We know lot of theories, but haven't
      >programmed that much. one more thing is that in Kiev, they require
      >from you to know 4 or 5 languages including: C/C++, Java, Visual C+
      >+, .NET, SQL and so on. But how can we learn all that during 4 years
      >of our Bachelor degree? We are already beginning the 3rd year, and all
      >we know is C and C++ without any experience in coding!
      >>
      >our questions:
      >We don't know how to solidify our knowledge in C++? Should we get a
      >project and work on it?
      >I wonder if there's a book out there that has some projects of C++
      >with some guide-lines.
      >
      A project is always a good idea, start by doing the exercises in "The
      C++ Programming Langauge", which range from small and easy to large and
      advanced; that should give you a good foundation to stand on, when
      moving on to real projects.
      In addition you might consider joining ACCU (http://accu.org/), which
      will give you access to mentored projects. Also, have a look at:

      <http://www.spellen.org/youcandoit/>

      and its "Mentors & Partners".
      To find a real project check out open source
      hosting sites such as SourceForge and find a project you find
      interesting. Start by learning the code and getting familiar with their
      ways of working, then slowly start contributing (finding and fixing
      bugs, then add a few small features and work your way up).
      This is something to take with caution. Lot (most?) of the C++ code on
      SourceForge isn't exactly a model to learn from. I have seen something
      good, but they were *big* projects where even an experienced
      programmer would be initially lost. Some code I know for sure as being
      of high quality is James Kanze's, at

      <http://kanze.james.neu f.fr/>

      Consider that some of the facilities there were written in the
      pre-standard days. Anyhow, even if you just take the most simple stuff
      I'm sure you'll learn something.

      If you haven't already, also look for books by Scott Meyers and Herb
      Sutter. And, perhaps a little later, "C++ Coding Standards", by Sutter
      and Alexandrescu. Steve Dewhurst books are also good, though not
      always fully "in line" with the subject (i.e., you'll find many good
      insights, but not all of them seem to have directly to do with what
      the book title suggests --e.g. things which aren't C++ specific in
      "C++ Gotchas").

      "Accelerate d C++" by A. Koenig and B. Moo is also recommended.

      I know that you were looking for _projects_, not books, but these ones
      may accompany you (effectively :-)) while you do some real programming.

      BTW, if you want specific advice on some of your code, I think you can
      post here and ask for a code critique. When it comes to criticizing,
      all of us here are pretty "helpful"! :-)

      --
      Gennaro Prota | name.surname yahoo.com
      Breeze C++ (preview): <https://sourceforge.net/projects/breeze/>
      Do you need expertise in C++? I'm available.

      Comment

      • farshsomo@gmail.com

        #4
        Re: How to solidify our C++ knowledge?

        On Aug 23, 1:27 am, Erik Wikström <Erik-wikst...@telia. comwrote:
        On 2008-08-23 09:46, NAU programmers wrote:
        >
        >
        >
        >
        >
        Hey folks,
        Me and my friend are beginning our 3rd year at Computer engineering
        faculty in a university in Kiev-Ukraine . Unfortunately, there aren't
        any good professors in our university, and the level of education here
        still goes back to Soviet Union time. Me and my friend are fond of
        programming and have made up our mind to study on our own. Without
        having nay guide teacher, we started out with C, read few books in C
        for about 9 months. Then we moved to C++. For the past 6 months, we've
        been studying different C++ books such as: Osborne complete reference;
        Teach yourself C++ in 21 Days; Stroustrop C++ book. But our problem is
        that we have no one to guide us in our studies. We don't know how to
        solidify our knowledge in C++? Should we get a project and work on it?
        Suppose if we even worked on a C++ projected, there's no one to look
        at our code ans correct us! I wonder if there's a book out there that
        has some projects of C++ with some guide-lines. We can't cooperate
        with any company either, Because in Kiev, either you're a professional
        C++ programmer and you make a good money, or you're nobody! They don't
        let us work as summer intern or something like that.
        We apppreciate you taking time and reading our email, and guiding us
        how to solidify our knowledge. We know lot of theories, but haven't
        programmed that much. one more thing is that in Kiev, they require
        from you to know 4 or 5 languages including: C/C++, Java, Visual C+
        +, .NET, SQL and so on. But how can we learn all that during 4 years
        of our Bachelor degree? We are already beginning the 3rd year, and all
        we know is C and C++ without any experience in coding!
        >
        our questions:
        We don't know how to solidify our knowledge in C++? Should we get a
        project and work on it?
        I wonder if there's a book out there that has some projects of C++
        with some guide-lines.
        >
        A project is always a good idea, start by doing the exercises in "The
        C++ Programming Langauge", which range from small and easy to large and
        advanced; that should give you a good foundation to stand on, when
        moving on to real projects. To find a real project check out open source
        hosting sites such as SourceForge and find a project you find
        interesting. Start by learning the code and getting familiar with their
        ways of working, then slowly start contributing (finding and fixing
        bugs, then add a few small features and work your way up).
        >
        Is there a special way of learning all of these languages I mentioned
        above? We're planning to spend another year on C++, do you think it's
        a right decision?
        >
        C, C++, Java, and C# are all quite similar. If you master one of them
        you should be able to learn enough to be productive in the other
        languages by reading a book or taking a quick course. SQL is of course a
        bit different but again you can become productive if you read a book or
        two. Learning Visual C++ and .Net can take a bit more time since it is
        more about knowing libraries/framework.
        >
        My point is that no serious company will expect you to really know all
        of these languages, they expect you to know one or two and have some
        knowledge in the others. If they expect you to know SQL and have some
        proficiency in the others you will probably not be employed, but if they
        want you to know C++ your chances are better.
        >
        Of course, knowing all the programming languages in the world does not
        make you a good programmer, so spend some time to study other, relevant
        subjects such as object-oriented design, design-patterns,
        datastructures, software engineering, etc.
        >
        --
        Erik Wikström- Hide quoted text -
        >
        - Show quoted text -
        We thank you Erik

        Comment

        Working...