Programming, Which Language and How?

Inquisitor here is the reason I am posting this URL just to be clear what I mean.
Although I could create a similar thread it is not necessary since this exists (multiple same threads is a terrible idea also).
That's why I am angry and dissapointed :( when I receive messages and read posts your program/game crash
BTW thank you for your interesting.
You have helped me also posting in my threads about programming. :)
To be back into thread for someone who knows C which platform is the best?
A general question of course but let me know.
C is a popular language but there are many variations such as MFC, Visual C++, C# (all by MS), C++ Builder by Borland etc.....
 
Last edited:
C is a popular language but there are many variations such as MFC, Visual C++, C# (all by MS), C++ Builder by Borland etc.....
They aren't variations of C. MFC is an API, Visual C++ is an IDE, C# is a different language altogether and C++ builder is another IDE.

Festive Zefan said:
Glad to hear that, my course has just ditched C++ in favour of C# & Microsoft's XNA.
You do a game technology course or something don't you? To be honest, that's not a good sign that they are ditching C++. I know MS are pushing C# and XNA, but not many commercial games are being made with C#. C++ is still the industry standard and I don't see that changing any time soon.
 
You do a game technology course or something don't you? To be honest, that's not a good sign that they are ditching C++. I know MS are pushing C# and XNA, but not many commercial games are being made with C#. C++ is still the industry standard and I don't see that changing any time soon.

Quite, which is why I'm taking anything I hear about C# being good as a bit of relief.

They're currently in the process of making a UWE Games Studio, which will take on the best students. Obviously they're not going to be developing a 360 killer app, more likely a small XNA title or take part on a larger project with other studios.

Everyone on the course knows that C++ is still prevalent for nearly all games development, I'm going to be learning it in my spare time next year.
 
a) Don't touch XNA with a barge pole. The only people who profit from you using XNA are Microsoft.

b) C++ is the choice of the games industry for a reason. Find out this reason and you realise why other languages like C# can't stand up to that.

c) C++ is a pain in the ass as a language, mosr other languages (C# / Java / PHP) are far nicer, but I wouldn't rely on them except for information systems uses *only*. Considering that includes the majority of applications, you should be safe :D

d) With C++ if you choose to go the FOSS route, you have a hell of a lot of support and a lot to gain, not to mention amazing libraries. The other routes have nicer IDEs and side technologies to help them be applied to multiple applications, but C++ has the blessing of all the major large corporations including Sun, IBM, Google etc who pour millions into FOSS development. No other language really gets that attention.
 
RPG and ILE :p

Seriously, I'd look at C++. It's presence is used widely, not just gaming but for commercial use too. We find it quite hard to get permy C++ programmers to support our banking front end system because they are either too expensive or to hard to get hold of the decent ones. So we normally end up with contractors at an hourly rate between £50 - £80 depending on their experience and we have 4 at the moment.

The problem for you is not learning the coding or the language, it's putting it to commercial use, which is a different thing altogether.
 
Last edited:
as someone who is still relatively new to the programming game as a career choice. (been over a year but only 3/4 months have involved me putting serious time into it as I also do Support) I have had to learn a variety of languages and technologies with varying degrees of success.

C#: This is used as the main development language which is great as I always wanted to learn it but never had the time and have to say it was a fairly easy language to pick up. (although it helped that I had done a Comp Science Degree with C++/Java although never really got on with the languages). I think the main advantage to C# is that it is relatively easy to accomplish the simplest of tasks with little to no knowledge of the language.

ASP.Net: Having never done anything like this and having to play with someone elses code this was a kind of baptism of fire. Again had always wanted to learn web stuff but never had the time. The nice thing about ASP i find is that you can accomplish a lot of tasks behind the scenes using C# and in conjunction with ASP I have also been using these languages/ technologies:

HTML
XML/XLST
Windows Live Platform
AJAX (Fairly new to this but having a go anyway)
Javascript (try to avoid this and use server side c# code instead)
CSS

So although this was a challenge having the experience from other languages and some great colleagues to guide me helped a lot.

SQL: This to me had always been a nightmare. During my uni course I switched off whenever SQL was mentioned as it didn't intrest me. Now I wish I had paid more attention as I have found it to be a remarkably powerful language. I knew that it was powerful in my uni days but using SQL with other technologies has helped tie in everything that I am working on.

Now I have to say that picking up these new skills would have been much harder had I not had at least some experience with a programming language. The language I first started with was BASIC (not VB.NET) and if ever I encountered a problem that I am not sure how to get round I will sometimes draw on these experiences so that i can get a basic working copy of a program and then look at more elegant ways of getting the code to do what I want it to do.

Certainly getting comercial experience is difficult and I have to say had I not taken it upon myself in my previous job to try and develop a system I don't think I would have got my current job. I always find the best way to learn a language is to find a problem and then develop a solution around that problem. This is what I did in my current job and although the code I initially developed was very basic and ugly I have been refining it as I pick up better methods and tips from other developers and reading books.


I think really your choice comes down to what it is you want to do and then go with a language that is well supported as once you understand how the basic mechanics work you can apply this knowledge to other languages. The only difficult thing is the syntax and thats what help files are there for.
 
a) Don't touch XNA with a barge pole. The only people who profit from you using XNA are Microsoft.
I think XNA is good for amateur and hobbyist games, and it's probably ok for demo work on a job application as long as you can show you know your way around C++ as well.
 
They aren't variations of C. MFC is an API, Visual C++ is an IDE, C# is a different language altogether and C++ builder is another IDE.
OK I don't disagree :) but the basis is C behind of these languages. MFC although it does not require any components e.g. Framework is very difficult IMHO.
 
C++ is a lovely language, IMO. Why is it a PITA?

I consider myself a serious C++ developer. But I still think C++ is a pain in the ass on so many accounts :

1) Memory management
2) Templates
3) Macros (Compiler macros / "inline" functions)
4) Build systems

All these things are a damn site easier in other languages. Build systems alone drive me nuts, even though they are very powerful. Macros / inline functions / templates just make code *that* much harder to read.
 
OK I don't disagree :) but the basis is C behind of these languages. MFC although it does not require any components e.g. Framework is very difficult IMHO.
C# is based on C, but only as much as Java is. It was just named cleverly by MS so people think it's the successor to C++.
 
I consider myself a serious C++ developer. But I still think C++ is a pain in the ass on so many accounts :

1) Memory management
2) Templates
3) Macros (Compiler macros / "inline" functions)
4) Build systems

All these things are a damn site easier in other languages. Build systems alone drive me nuts, even though they are very powerful. Macros / inline functions / templates just make code *that* much harder to read.

Hmm. Memory management can be a problem, though smart pointers are available in Boost and other libraries, and are in TR1, so C++ 0x will have them. That eases the pain considerably..

I find templates an incredible feature really - though the language makes certain things hard to do (which should be easy). I think the pros outweigh cons considerably.
I may be wrong, but I don't think the "equivalent" features in other popular languages match C++'s templates in terms of power.

Macros and the preprocessor are a necessary evil I suppose, and need overhauling/replacing. Really though, I find myself using very little preprocessorage ( ;) ) now..just trivial stuff like include guards.

Hopefully C++ 0x will hurry up - it does sound like it'll improve the language considerably.
 
Back
Top Bottom