Can someone point me in the right direction?

Started by
7 comments, last by Justin Califano 11 years, 4 months ago
Im currently trying to learn to program on my own and seem to be having a hard time doing so. I am torn between C++ and C#. I know I should go with C# as a first choice over C++, however the little bit ive read of each the C++ seems to have stuck with my a little easier. My question is, could someone please point me in the right direction with either language? What books should I get, what order should i read them, what I should learn before I start the basics of a game (simple 2D)?

Some of the books I have access too are:
Sams Teach Yourself C++ 6th Ed.
C# 2010 for Dummies
Sams Teach Yourself C# (2004)
Focus on SDL
Beginning C++ Through Game Development
Beginning C# Game Development
Oreily XNA 4.0

I just feel overwhelmed and would GREATLY appreciate any advice. Im not the best when trying to learn from a book alone, I do MUCH better when in a student/teacher environment. Unfortunately I dont seem to have that option.

Thanks in advance.
Advertisement
If the only choice you have left is to teach yourself, my advice for you is just to start. It doesn't make a difference what you learn, so long as it's fun and engages your brain to want to keep learning. That makes what book to choose first a very personal choice. I personally would choose "Beginning C++ Through Game Development" from your list above, because that sounds fun.

I think most successfull programmers started out when they were very young (12 years old for me) by checking out books from the library that contained small game programs (BASIC games for me), typing them into a computer and seeing what they do :)

Have fun!
You say you have "access to" those books. Do you mean you already own them, or can get them for free? If so, use what's already at hand.
If you are asking for book suggestions to purchase, are you opposed to suggestions from outside that list? Some in that list, I wouldn't

If you are learning C++, and limited to the books listed, I would suggest just getting one book as your "primary" book (probably 'Beginning C++ Through Game Development'), and get a second book as a reference book to skim through when bored or confused (probably 'Sams Teach Yourself C++' if you have it for free. If it's not free, I personally wouldn't waste money on it. I've never read it myself, but it doesn't look like something I'd bother with).

Then bookmark this website. It's documentation for the C++ standard library.
If you have any programming questions, we'll be happy to help explain anything that is confusing, so you're not completely without interactive help.

Don't use the IDE* (usually Dev C++) that comes on the discs with the books (if there are any discs). Instead, use either QtCreator (my preference) or Visual Studio (industry standard) or Code::Blocks. All of them all free (though Visual Studio costs money for Pro editions, the Express additions aren't hindered at all and very very good. The Pro edititions are mostly for large businesses).

*[size=2]An IDE is a program like Microsoft Word, where you type in your code. IDEs usually integrate a compiler that actually turns your human-readable code to machine-readable bytecode.

I am torn between C++ and C#. I know I should go with C# as a first choice over C++


Yes.

however the little bit ive read of each the C++ seems to have stuck with my a little easier.
[/quote]

No.


My question is, could someone please point me in the right direction with either language? What books should I get, what order should i read them, what I should learn before I start the basics of a game (simple 2D)?
[/quote]

Read me. For each language there are book and site recommendations.


As to the last question, that depends on what language you go with. If it's C++ and to a lesser degree C#, you will have a hell of a lot to learn before you will be ready for 2D graphics. As a general rule of a thumb, you need to know the first 1/3 - 1/2 of any introductory C++ book before you are ready to move on to this stage. I said "KNOW" and not "READ" btw... there is a huge difference.

However, if you went with something higher level, like LUA + Love2D or Python + PyGame, you can basically learn will making a 2D game. This is one of the big advantages to the higher level languages.
I've never read "Beginning C++ Through Game Development, but I'd like to suggest C# Programming for the Absolute Beginner if you can get your hands on it. It may not be the most thorough of books (but I wouldn't expect a beginner book to be), but it's what got me into C#. It uses simple games or game-like applications to teach you a few of the fundamental aspects of object oriented programming through C#.

I started programming in high-school with Pascal, C, and C++, but there are some aspects of those languages that seemed a little confusing and/or daunting. C#, I think, is a better way to introduce yourself to object-oriented programming and is a little easier to work with. That being said, if you already feel an affinity toward C++, there's no reason you shouldn't follow through with that.

Inspiration from my tea:

"Never wish life were easier. Wish that you were better" -Jim Rohn

soundcloud.com/herwrathmustbedragons

As for the books, its was an auction on ebay that included the books i included and a few others i didnt bother listing.
I have several IDE's installed on both my OS's, and none of them are DevC++. In Win7 i have Visual C#/C++ express, Code::Blocks & SharpDevelop, and on OSX I have Xcode, QT & CodeRunner.

I would really like to learn C++ eventually, but I suppose it is wise to start with C# and go with that till I can manage something with it. I guess I just feel overwhelmed kind of. I will try to get my hands on C# Programming for the Absolute Beginner though and see if that helps. I see its quite pricey on Amazon, but I will keep an eye open for a cheaper used copy.

Thanks for the advice.
I started learning C++ as my first language. I used the 'Beginning C++ through game programming' and I loved the book. It is the one I still refer to the most. It took a little bit to figure things out, but the book does a good job of walking you through what you are doing. I went through some of the chapters several times, and used tutorials I found on youtube and thenewboston.com, to help me get the hang of it.

One language might be easier then another, but as many people have said, it is your choice. I would say if C++ is sticking with you better then C#, I would go with that. However, it is also said that C++ has a much higher learning curve.

As for the books, its was an auction on ebay that included the books i included and a few others i didnt bother listing.

Well, you already have those ones, I'd suggest just using those. After going through them, you'll be in a fairly good place to decide what gaps you have in your knowledge, which you can fill using online tutorials and discussion forums.

Not based off of any familiarity with C# or the books themselves, but merely the titles and the publishers, I'd suggest reading 'C# 2010 for Dummies' as your 'primary' book that you work through chapter-by-chapter, and using 'Sams Teach Yourself C#' as a reference book when you feel you don't understand something in the first book, so you can get a second author's explanation.

I'd then read 'Beginning C# Game Development' for fun on a couch whenever you feel like it, instead of at a computer desk, and use 'Oreily XNA 4.0' when you start learning XNA specifically, after already knowing the basics of C#.

Reasoning: I've had good results from other 'For Dummies' books, which are usually fairly comprehensive. Sams Teach Yourself usually get a somewhat bad reputation, from what I hear (though it may be undeserved). Beginning C# Game Development tries to teach you multiple concepts at once (C#, DirectX, and game development) instead of honing in on one, so it might rush over important topics, and Oreily XNA 4.0 teaches you XNA not C#, so you probably need to know at least the basics of C# before reading that.
I found a copy of C# Programming for the Absolute Beginner at a local independent computer repair shop that sells used computer books. Ill give it a read through and see what I can learn. Thanks for the recomendation. Since it teaches through programming basic games, this might be a good book for me to start with.

Edit: Ive been seeing posts lately about XNA's future. Are there other options for C# game development if XNA is dropped?

This topic is closed to new replies.

Advertisement