This forum has been archived. Please start a new discussion on GitHub.

Where to Begin?

Newbie Warning: I'm a less-experienced C++ programmer. To rate my experience -- I've gotten through most of Deitel & Deitel's "C++ How to Program" and did fine, but haven't really covered the most advanced concepts therein, and have limited experience with STL. I haven't yet developed any "real" applications.

I've been looking for a robust client-server networking framework. I'm wanting to start developing a foundation framework for cross-platform, client/server online games. I certainly don't expect to accomplish this overnight, nor alone :) but I've got to begin somewhere. I think Ice might be the answer.

Unfortunately, it takes me awhile to grasp some of the more abstract concepts in the Ice documentation. I'm wondering if there are any books, tutorials, walkthroughs, demos, etc out there that are aimed at less experienced developers who like a more hands-on approach.


  • marc
    marc Florida
    I'm afraid if you never wrote a "real" C++ program, then your learning curve for Ice for C++ will be very steep.

    The manual is the best tutorial we have. I don't see any way to simplify the manual. The concepts described there must be understood in order to use Ice efficiently.
  • ICE is fundamentally an object-oriented middleware, so there are some concepts that have to be understood beforehand:

    1. Object Orientation (not excluding "design patterns")
    2. Network concepts
    3. Concurrent programming
    4. Platform dependent programming (Linux, UNIX, Windows, Java etc.)

    Experience in these areas will come from writing real applications. However, though it is a bit difficult to start eveything together, it not impossible. You can learn things gradually in parts -- but it might just take much longer. As Marc said, the learning curve will be steep.

    Many people are increasingly taking notice of ICE and appreciating it very much. Maybe somebody will come up with a more diluted tutorial or demos for ICE, or who knows even "ICE for Dummies" ;-). Meanwhile, you can use this bulletin board for seeking help or let's discuss if somebody thinks setting up a YahooGroup for ICE users would be suitable for this kind of job.

  • irbrian,

    Don't despair. I'm currently middle management so I haven't really programmed to the metal in the last few years. Besides, the company I work with is a "Visual Basic" company. The people in the office who can actually remember how to develop in C++ can be counted with the fingers on one hand.

    So to be able to come up with prototypes, I had to relearn C++. I actually used the following books to get me back on my feet:
    1. C++ Weekend Crash Course by Stephen R. Davis ISBN: 0-7645-4689-9
    2. SAMS Teach Yourself Visual C++ .NET in 24 Hours by Richard Simon and Marck Schmidt ISBN: 0-672-32323-0

    I also got the following books but only for reference
    1. Turbo C/C++, The Complete Referece by Herbert Schildt ISBN: 971-656-041-9
    2. C++ Applications Guide by James T. Smith ISBN: 0-07-039010-X
    3. SAMS Teach Yourself Linux Programming in 24 Hours by Warren W. Gay ISBN: 1-57595-352-8

    Hope this helps to point you in right direction.

  • marc
    marc Florida
    Some of the best books to improve your C++ knowledge are "Effective C++" (Part 1 and 2) and "Effective STL", by Scott Meyers. I highly recommend these books to everyone who wants to write software with C++ and STL.