why should i learn c# (not the "eternal" thread)

Started by
25 comments, last by GameDev.net 18 years, 10 months ago
hi there, well, first things first: this is not a c/c++ vs c# thread or so and has not much to do with game development.... now: i already "know" the basis of c# (at least the syntax), but i have not "in-depth" knowledge of this language and .net in general (havent done a graphic , network, databse or web app yet) I have solid basis on C/C++ and Java (i DO have done some database,web,network and of course a graphic app --a simple 3d game--). I'm still studying in the univserity (i'm 20), and what i think i want to work in is gameDevelopment. I know that the standard is c/c++ 'cause speed performance, but i hightly doubt that when i finish school, i will work on a game developer company,besides,i want my own company, and to earn the money i need to, i have to work in a better paid job for a "newbie". (yeah, i know it sounds like a silly dream, but iam already working hard to achieve it) well, the question is......what does c# and .NET can offer me to achieve a better paid job in a good/important company that java or c/c++ cant ??(or will be harder to) , and it which area is will it be? (or the most probable).... and it what areas is more used than c/c++ and java?? p.s.: i would love to have a job in europe hehe...... thanks in advance.....
Advertisement
C# gives a big boost to productivity in my opinion. I feel C# is a very well constructed language which combines many of the powerfull features of VB, Java and C++. It is easy to learn with many powerful features like Reflection. Since I have started using C# I feel I have been able to do more in less time.


Matt
----Jemts"A Hooloovoo is a super-intelligent shade of the color blue."- Douglas Adams
Yeah, if you don't mind the bigger memory footprint of the .NET framework or the few other disadvantages, C# is way easier to code, and for that reason it's pretty damn popular out there in the real world.

C++ isn't all that common outside games and other high-performance apps. If you're writing software for any other business, they generally just want it to be developed quickly and easy to maintain. C# (and to a certain extent Java or even VB) is great in that respect.

When you're writing a huge program that's intended to be used by a company's 3000 employees, what matters is that it's stable, and its on time and on budget.
You don't care about framerates or performance or low-level control, so why would you even bother writing it in C++?

It's always hard to say what the "standard" language is outside the games industry, but at the moment, I'd say Java and C# are the big players. C++ is small fry, used in smaller specialized situations.
BlackWind,

you should go figure out for yourself. I'm sure it will quickly become apparent.

C# in itself is a nice language. But where the real power lies, is in the .NET library. Go build some applications, and try to learn what are the .NET design patterns / solutions to common situations or problems.

It's very hard to use objective arguments to qualify what a language has to "offer", why it's "better" for some applications, and so on. Sometimes, even with objective arguments, some people still argue that they prefer another langage. That's why I think it's useless to discuss the advantages of C# and other languages. It has been done numerous times in these forums, and it always ends up in a language war. Just try it (which will always be beneficial to your IT bagage), and make yourself an opinion.

Java and .NET were built for the business. Hopefully, that means that they are more suited to it than C++ (just an example). Obvisouly they are the big players. I personnally prefer .NET, and of course I have some reasons. But they won't necessarily be yours, and lots of people prefer Java.

Regards,
jods
Your C++ knowledge will also come in handy as if you ever need to write mission-critical code, you can write it in C++ and export it into the .NET framework.
Quote:Original post by BlackWind
hi there,

well, first things first:
this is not a c/c++ vs c# thread or so and has not much to do with game development....

now:
i already "know" the basis of c# (at least the syntax), but i have not "in-depth" knowledge of this language and .net in general (havent done a graphic , network, databse or web app yet)

I have solid basis on C/C++ and Java (i DO have done some database,web,network and of course a graphic app --a simple 3d game--).
I'm still studying in the univserity (i'm 20), and what i think i want to work in is gameDevelopment.

I know that the standard is c/c++ 'cause speed performance, but i hightly doubt that when i finish school, i will work on a game developer company,besides,i want my own company, and to earn the money i need to, i have to work in a better paid job for a "newbie". (yeah, i know it sounds like a silly dream, but iam already working hard to achieve it)

well, the question is......what does c# and .NET can offer me to achieve a better paid job in a good/important company that java or c/c++ cant ??(or will be harder to) , and it which area is will it be? (or the most probable)....
and it what areas is more used than c/c++ and java??

p.s.: i would love to have a job in europe hehe......

thanks in advance.....


The non-tech buisness men whom look out for catch phrases (aka potential bosses whom get paid way too much) have latched on to ".Net" like hungry leaches. Like most buzzwords etc the hype will die down to levels where Java is right now (which used to be the latest hip buzzword). Questions like "Do we have Java" are now probably less said then "Do we have this .Net thing?" in those highup looney board meetings, whose partipants latch on to whatever is fashionable.

At the end of the day there will always be work for a decent C++ developer (if there are any openings, competition is pretty fierce for jobs right now... more developers then jobs...), Java and .Net too. Just right now those .Net is "in". Which is alright for developers, because it is a solid well specified platform - where as Java has sadly become a little fragmented recently.

Europe is suffering from another boardroom buzzword "outsourcing" and "offshoring" right now, so entry level jobs are a bit sparse on the ground. Again, it's probably a fad and people are starting to "insource" again. Indeed some companies now proudly tout that they are keeping things local, like the UK bank "Natwest" which is shunning the trend.

Working in Europe when you are not a European citizen can be pretty tough... I know this because I married an American and even with that visa she finds employers uneasy about it. I would say the best course of action is contacting some employment agencies in the European country you want to work in and see what advise they give you.

(Edited a spelling / typo error)

[Edited by - paulecoyote on June 6, 2005 9:25:15 AM]
Anything posted is personal opinion which does not in anyway reflect or represent my employer. Any code and opinion is expressed “as is” and used at your own risk – it does not constitute a legal relationship of any kind.
well....thanks for your advices, but, isnt a specific area where .NET is "the best" or most used??

Quote:Original post by paulecoyote
Just right now those .Net is "in". Which is alright for developers, because it is a solid well specified platform - where as Java has sadly become a little fragmented recently.

i've seen that .NET is monster, and the pure fact that the next windows will be .NET based gives me the idea that it has a lot of future, also C++ that i think will be still strong for the next 10 years at least, but......why do you say that about java??

Quote:Original post by paulecoyote
Working in Europe when you are not a European citizen can be pretty tough... I know this because I married an American and even with that visa she finds employers uneasy about it. I would say the best course of action is contacting some employment agencies in the European country you want to work in and see what advise they give you.

i'm mexican....what does the future depares to me?? =S

Quote:what does c# and .NET can offer me to achieve a better paid job in a good/important company that java or c/c++ cant ??

Well, first off. You don't have to code C# to learn .NET. Managed C++/CLI can also be used, and if you're familiar with C++ that is the fastest way to get going. When you're familiar with .NET the transition to C# is a no-brainer.

As other people have said on this thread, .NET is the big new thing. It's probably easier to get a job doing .NET than java if you're talking about big "important" companies. Java is huge on mobile phones for instance, but few big companies exist for those platforms.

Quote:i've seen that .NET is monster, and the pure fact that the next windows will be .NET based gives me the idea that it has a lot of future

Yes, probably. At least when it comes to creating Windows applications. I've personally made the transition to .NET already because it's soo much easier than using the old Win32 API. And I doubt that Java can do the work as fast.

We'll probably see .NET implemented on other platforms than Windows too. Mono is an interesting open source project that run on a number of OS's.
I'm not sure about that future thing, just permits are hard to come by.

As far as Java goes I was saying about how things like XML parsing is built in to the .Net framework, where as with Java you have tons of different choices of implementations. Those choices are great, but they leave a platform fragmented.

.Net also has the advantage of Visual Studio .Net - which spoils a developer in ways that no other IDE I've come across yet does. With Java you've got to screw about with make files, ant files, or the like.

I do like Java and I did my university projects in Java, but .Net is just somehow... easier. For me anyway.
Anything posted is personal opinion which does not in anyway reflect or represent my employer. Any code and opinion is expressed “as is” and used at your own risk – it does not constitute a legal relationship of any kind.
Quote:Original post by paulecoyote
.Net also has the advantage of Visual Studio .Net - which spoils a developer in ways that no other IDE I've come across yet does. With Java you've got to screw about with make files, ant files, or the like.


You have obviously never used IntelliJ IDEA. I use VC .NET more, but IDEA leaves it in the dust. VERY nice.
--Mark

This topic is closed to new replies.

Advertisement