Members - Reputation: 100
Posted 17 March 2012 - 08:17 PM
I am aware that there are a lot of threads about that and I already read big parts of http://www.gamedev.net/topic/526738-why-c-xna-when-everyone-wants-cc
But this thread for example is from 2009 and it mentions several times that lots of devs did not adapt to C# yet, so...
But let's get to my background:
In school I first learned hypercard, but as it was on the mac I learned toolbook at home. But in both cases just basic knowledge.
In the next school I learned the basics of C++ and had a very short peek into assembler. And since then for the next 10 years I didn't much with programming besides of fiddling around with basic php now and then.
My personal attributes:
good at understanding but bad at memorizing commands
very hard to motivate, especially without more or less immediate results
while patient when motivated, very low attention span when unmotivated
and you can probably guess that these attributes don't work too well with each other as in: Starting something, realizing I am not able to do it like I intended to -> dropping it
I am writing that, not because I want psychological help, but to make a better picture of the situation.
Now I wanted to do + learn to do something "productive and creative" again. So I bought a book for Visual C++ 2010, which works with C++/CLI
At maybe 2/3 of the book I had a question which was not really explained in the book, and I looked around, asked, and it seems like C++/CLI is rather exotic and not really used that much.
Now I am wondering what to do. I mean, I will torture myself to get through the rest of the book, but I am wondering what to do after that.
My idea was to start to program little games, or basically experiment with concepts and build upon that, grow, and in the end being able to do that with mmo-style games (and I am not talking about making an "WoW2 on my own" but about very "small" scale projects, like elements of browsergames, Unity Engine or something similar, maybe just concepts or ideas in them, and at this point maybe join a group)
So what I want to do, is to work and learn in a direction and build on that.
What I do not want is to repeat what I did in the past: Learn something, come to the conclusion that what I just learned is worth zero (besides of basic concepts) and start over.
So what do you think is best in my case? Should I go on looking into C++/CLI? Is this used at all? Should I forget about CLI and just learn C++? Or is C# the best choice in this case?
I am currently sympathizing with C#, but I fear reaching a certain point at which I experience a "from here on, you must use C++, please start over again", especially in regard to the net-structure of what I intend to do in the long term.
I'd welcome any advice.
Members - Reputation: 106
Posted 18 March 2012 - 12:13 AM
you already know the answer, C++/CPL isn't very common, if you google it, or look for resources your going to be depressed. i'm sure that's why you here.
if you want a more complicated and powerful language goto C++, if you willing to let some things become more easy goto c#. if you want to be a mad pro
learn both. i've spent the past month with c# but after doing some XNA coding I feel going back to C++ might be a good option. you need to solve the problem
Members - Reputation: 332
Posted 18 March 2012 - 05:16 AM
I'd say go with C#. It's a modern language with lots of nice features that doesn't exist in C++.
Prime Members - Reputation: 703
Posted 18 March 2012 - 04:19 PM
I am currently learning C++ and C++/CLR in detail, while I hated the languages several months ago (mainly because I was tired of using the * and & or && and ^ operators) I have grown fond of C++ and C++/CLR but I probably never would consider them a primary language or use them in production, as a paranoid person C++ isnt a fun language to work with especially when things are working fine, with C# programming is always fun and I am rather attached to EF, MVC and WPF to let go anytime soon.
Saying all that C++ isnt a bad language to learn for the sake of learning (assuming you DONT pick it as a first language), but from a development point of view its very fragile and C# has a tonne more features and garbage collection that is very good at doing its job (again something you appreciate more when you experiment with C++, even CLR). Stick with C# and when you are comfortable with the language feel free to expand your knowledge with C++