Why am I getting random downvotes with no explanation? Doesn't help you know.
My interpretation of the downvotes is twofold. One, you're biting off more than you can chew. All of these acronyms: OOP, ECS, DDD take experience. Which means you should have a few years of actual software design and architecture under your belt before undertaking the newer paradigms. Two, another thing is that with software development is you learn more by doing, not just reading. Unfortunately, it seems you're wanting to do the opposite.
I remember in university that CS 1 (Variable, Functions, Classes, Inheritance, Composition), CS 2 (Data Structures), and Discrete Mathematics were mandatory. I wonder if Design Patterns is mandatory now. I don't see why it wouldn't. It seems just necessary to the beginner programmer as the other 3. I know some people here are CS/SE/CMIS teachers and other are actual employers. Do you think that it should be added to the mandatory curriculum as opposed to an elective (if it is one)?
I have mild experience in C++, C#, and XNA. But I don't know if those are the most up-to-date languages for making a good game. Not saying it isn't possible to make a good game in them but I would like to know if there are better languages out there. I heard flash is really easy to use and works better than XNA.
The "Best" Language is the one you are more comfortable working in, if you have been writing in c# for 5 years, unless there is a professional reason for you to pick up C++, stick with C#.
N.B. XNA is NOT a Language, its is a framework written using the language C#.
The bolded 10000 times.
The only question I would ask you is this: Is there something about C# (the language) and XNA (the framework/library) that has hindered your game development? If no, then stick with it. Especially if you're a beginner or haven't made a completed game yet.
For the record, C#/XNA is more enough than and of high quality to make games. I definitely would not put Flash in the "Better" category when compared to C#/XNA.
Then I re-recommend QtCreator as a possible solution. Also, you could make yourself a Knoppix CD and run linux from disc. It'd be legit, and Linux has tons of programming tools you could use.
He can't make pong. You expect him to be able to run Linux? Go buy Windows 8. It's cheap. The hardware requirements are low. And really you have no excuse not to. Especially if you actually want to program something.
Lol, aye FLeBlanc. I must admit I have been looking though a few other peoples - all looks neater and better written than mine, I was actual on the bus when I read Alpha's reply and I gave out a little WTF. But I fixed the second problem too .. games looking good now.. anyway... if I get time I will post up the code to this particular coding horror ..