Thread: C++ Learner

    #1
  1. No Profile Picture
    Registered User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Nov 2013
    Location
    Hertford, UK
    Posts
    5
    Rep Power
    0

    C++ Learner


    I've just decided to start learning C++.

    Years and years ago I learned how to program in BASIC on an Amiga 500. Remember those? Yes, I'm old :rolleyes: I later learned ARexx on an Amiga 1200 but I digress.

    Anyway, when I learned BASIC the book I used took you through making your own database program teaching you all the basics along the way. It was very useful as it gave you a directed goal to the study and gave you a usable (for the time) program.

    Does anyone know of something similar but which teaches C++.

    Thanks in advance for any help!
  2. #2
  3. No Profile Picture
    Registered User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Nov 2013
    Posts
    1
    Rep Power
    0
    Originally Posted by Slinkey
    I've just decided to start learning C++.

    Years and years ago I learned how to program in BASIC on an Amiga 500. Remember those? Yes, I'm old :rolleyes: I later learned ARexx on an Amiga 1200 but I digress.

    Anyway, when I learned BASIC the book I used took you through making your own database program teaching you all the basics along the way. It was very useful as it gave you a directed goal to the study and gave you a usable (for the time) program.

    Does anyone know of something similar but which teaches C++.

    Thanks in advance for any help!

    I do not have a good answer for your question but I had to reply. This must be old guys night here ;) . I do remember the amiga computers although I did not use one my 1st was a Kaypro 2.2 running cpm. I recently started reading a c programming book mostly to keep the old brain working as xword puzzles get boring. Only type of programming I have done is some lotus macro stuff when I was working.
    I downloaded a free pdf of a c dummies book into my kindle device and read it there . i have been using bloodshed to run some learning programs. The is also a c++pdf dummies book you will have to do a search the forum won't let me post a link
  4. #3
  5. Contributing User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Sep 2013
    Location
    Saint-Petersburg, Russia
    Posts
    237
    Rep Power
    29
    By the way, why you want to learn exactly C++ and not some other language? You know, C++ is not as old as Amiga BASIC, but it is not extremely new either - and this will perhaps bring some discomforts to you while learning it... :)

    As about your question, I doubt that you can easily find such a book. I can remember one or two, but they are not worth reading.

    Problem here is that while Amiga BASIC was small enough, and many of its features could be covered in a small-scale project - C++ at the same time is comparatively very large with significant number of concepts which could not be learned intuitively and require systematic study.

    So if you want this approach, you'd better take a book on C++ basics (like "C++ Primer" etc.) - or may be on C basics at first (like Kernighan and Ritchie) - and after you read and train these first skills and get the feeling that at least syntax of the language is on your nails rather than in your head - then invent some bigger project (like simple game etc.) and try to implement it.

    However, I dare to repeat, if you are not obliged to learn C++ by taking some classes or certification, or for some very specific task - you probably will do you much good attempting Python, PHP or Java instead.
  6. #4
  7. No Profile Picture
    Registered User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Nov 2013
    Location
    Hertford, UK
    Posts
    5
    Rep Power
    0
    Originally Posted by AOK
    I do not have a good answer for your question but I had to reply. This must be old guys night here ;) . I do remember the amiga computers although I did not use one my 1st was a Kaypro 2.2 running cpm. I recently started reading a c programming book mostly to keep the old brain working as xword puzzles get boring. Only type of programming I have done is some lotus macro stuff when I was working.
    I downloaded a free pdf of a c dummies book into my kindle device and read it there . i have been using bloodshed to run some learning programs. The is also a c++pdf dummies book you will have to do a search the forum won't let me post a link
    I've found a few sites, and also pdfs etc but I'll look out for the dummies book on pdf. I found a site with a free compiler called "CodeBlocks" which looks like a pretty good starter at least and they have a structured free newbies teaching course on there which will at least give me the basics.

    But I like to run before I can walk so to speak which is why I was asking my question.

    Thanks for your reply.
  8. #5
  9. No Profile Picture
    Registered User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Nov 2013
    Location
    Hertford, UK
    Posts
    5
    Rep Power
    0
    Originally Posted by rodiongork
    By the way, why you want to learn exactly C++ and not some other language? You know, C++ is not as old as Amiga BASIC, but it is not extremely new either - and this will perhaps bring some discomforts to you while learning it... :)

    As about your question, I doubt that you can easily find such a book. I can remember one or two, but they are not worth reading.

    Problem here is that while Amiga BASIC was small enough, and many of its features could be covered in a small-scale project - C++ at the same time is comparatively very large with significant number of concepts which could not be learned intuitively and require systematic study.

    So if you want this approach, you'd better take a book on C++ basics (like "C++ Primer" etc.) - or may be on C basics at first (like Kernighan and Ritchie) - and after you read and train these first skills and get the feeling that at least syntax of the language is on your nails rather than in your head - then invent some bigger project (like simple game etc.) and try to implement it.

    However, I dare to repeat, if you are not obliged to learn C++ by taking some classes or certification, or for some very specific task - you probably will do you much good attempting Python, PHP or Java instead.
    I just want to learn to code again. I used to really enjoy the challenge, but life and kids got in the way and others things took my time. I don't have to learn it for any particular reason except my own desire to do so.

    Why am I learning C++? That's a fair question. Being so far out of the loop when it comes to programming and the latest languages it's hard to decide. I didn't to want just throw a dart at a board, so I went with something that I know has been around a while and seems, at least I thought, to be quite widely used, reasonably accessible and established.

    Basically, I want to write standalone programs on the Windows platform. Not sure exactly what I want to write yet, but like a lot of things, when you start doing them ideas come as a result, so I'm not too worried on that score. However, having a goal is always useful which is why I was asking if there were any books around like I asked about.

    Totally get that BASIC is nothing like C++. The ARexx programming was a bit more advanced than that and I did a lot more of that than BASIC which really was just my entry point into coding. ARexx allowed you to write your own procedures etc. It had a few built in commands but you could call libraries etc. so the basic structure of C++ looks familiar, and I expect it to get quite involved. I'm not going in with the illusion that this is simple stuff and I expect to spend time learning specifics in order to achieve desired results.

    However, if there are easier ways to achieve C++ looking resulting programs then I am all ears, and I'm happy to hear suggestions if you have any? :)
  10. #6
  11. Contributing User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Sep 2013
    Location
    Saint-Petersburg, Russia
    Posts
    237
    Rep Power
    29
    However, if there are easier ways to achieve C++ looking resulting programs then I am all ears, and I'm happy to hear suggestions if you have any?
    Much depends on types of programs you want to develop.

    For example, Java is quite nice for standalone applications with graphic interface (buttons, windows, etc.) - and unlike C++ it could be run on any OS where java machine is installed. Even in browsers (like java applets - though it is not popular nowadays).

    Java is not simpler compared to C++, but it is more well-organized and self-containing - and intentionally removes a number of nice features of C++ which gave great pains to both novice and professional developers (though they gave some specific freedom also).

    If you want simpler, but anyway professional, industrial-scale language - then try Python. It has all necessary features, but offers more gentle "learning curve". It has decent graphics libraries and is cross-platform too.

    Also it may happen that you'll find that you want not stand-alone but web-oriented applications (and I think you should some day). Both Java and Python suits well (C++ not so good), but favorite here is PHP - it has C-like syntax, but has the lowest "entrance barrier" among them all. However you'll need also to get some acquaintance with HTML, CSS, JavaScript and SQL by and by... It is not that hard... :)

    Good case when you need to learn exactly C/C++ is if you are going to write for embedded platforms or other kinds of hardware.
  12. #7
  13. No Profile Picture
    Registered User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Nov 2013
    Location
    Hertford, UK
    Posts
    5
    Rep Power
    0
    Originally Posted by rodiongork
    If you want simpler, but anyway professional, industrial-scale language - then try Python. It has all necessary features, but offers more gentle "learning curve". It has decent graphics libraries and is cross-platform too.

    Also it may happen that you'll find that you want not stand-alone but web-oriented applications (and I think you should some day). Both Java and Python suits well (C++ not so good), but favorite here is PHP - it has C-like syntax, but has the lowest "entrance barrier" among them all. However you'll need also to get some acquaintance with HTML, CSS, JavaScript and SQL by and by... It is not that hard... :)

    Good case when you need to learn exactly C/C++ is if you are going to write for embedded platforms or other kinds of hardware.
    I just looked at the official Python site and decided from what I read there that I'm going to give it a go and see what I think of it. I've just downloaded the 2.7.6 version for now.

    I'll keep in mind PHP and may have a look at that in the not too distant future. I wasn't even thinking of web based activities but I'm sure it will become pertinent once I get into the swing of things.

    Not so sure about Java, but again, I can always look at it in the future if I want.

    Thanks for the information. Much appreciated! :)
  14. #8
  15. Contributing User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Sep 2013
    Location
    Saint-Petersburg, Russia
    Posts
    237
    Rep Power
    29
    I'm glad I could help!

    Be sure to check the official python tutorial from their web-site. I myself learned this language with its help (along with language specification and library reference - two other useful PDFs from their site).

    Another thing to keep in mind - here are Python 3 and Python 2. They are significantly different. Python 2 is good when you want to support some industrial application (and want to use some specific libraries written specially for this older version), however for newcomer it perhaps would be better to start with Python 3 at once. It could be even simpler in some points.

    All documentation is also suitable to only one of two versions. For example tutorial for 3-rd version is here:
    http://docs.python.org/3.3/tutorial/

    It would be nice to hear from you about your progress - or perhaps about what project you'll start working on after you get satisfied with language basics :)
  16. #9
  17. No Profile Picture
    Registered User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Nov 2013
    Location
    Hertford, UK
    Posts
    5
    Rep Power
    0
    I already downloaded and installed 2, and into section 4 of the tutorial on their site already, but it's early enough for me to jump to 3 I guess.

    I'm sure I'll have questions along the way and will see you in the Python forum from time to time, and sure. I'll let you know how it's going once I've got some ideas and programs under my belt. :)
  18. #10
  19. Contributing User

    Join Date
    Aug 2003
    Location
    UK
    Posts
    5,116
    Rep Power
    1803
    Originally Posted by AOK
    i have been using bloodshed to run some learning programs.
    I would not recommend Bloodshed Dev-C++, it is a defunct project. There is a maintained derivative called Orwell Dev-C++, but if its debugger integration is as bas as Bloodshed's I would not recommend that either.

    Consider Code::Blocks with MinGW/GCC or Microsoft Visual Studio Express the latter has about the best debugger available.

IMN logo majestic logo threadwatch logo seochat tools logo