🔒 Locked
C# = the future?
Advertisement
Original Post
I've looked at some snipets of C#... and it looks pretty sexy. I like the idea of an all OO language. But... Will this language replace C++? Is this language good for game developers? Does it work well with OpenGL? Are there any articles or threads on C++ vs. C#? (search is broken tonight :() Thanks!
It is "the" langauge for Longhorn. So, it will replace C++ on the Windows side of things.
It is doubtful that it will replace c++, even on windows. It is just an alternative that can be used instead, should you choose to do so. It does some things better and some things worse than other languages, just like all the others. Yes you can use it to develop games, and yes there are opengl bindings. as for threads google is your friend. Paste this in the search
c++ vs c# site:www.gamedev.net
c++ vs c# site:www.gamedev.net
I dont think that it will ever replace C++ for games development, because all consoles use unmanaged code in C++ and I cant see them changing anytime soon.
C# seems to be working excellent with DirectX9. I seen a screenshot of a RTS game created with it and it looked damn good, reading a review of it, it seemed to NOT be lacking severily it speed.
I think theres a library called TAO, to use OpenGL with C#.
I think C# will replace C++ in as far as Windows GUI applications goes, gui tools for games, eg, level editors, etc. With Longhorn giving 110% support for .NET, and GUI development is quick, I reckon its one of C#s likely position in the future.
C# seems to be working excellent with DirectX9. I seen a screenshot of a RTS game created with it and it looked damn good, reading a review of it, it seemed to NOT be lacking severily it speed.
I think theres a library called TAO, to use OpenGL with C#.
I think C# will replace C++ in as far as Windows GUI applications goes, gui tools for games, eg, level editors, etc. With Longhorn giving 110% support for .NET, and GUI development is quick, I reckon its one of C#s likely position in the future.
The day I allow my C to be scripted is the day I chop off one of my testicles.
'nuff said.
'nuff said.
Taking into account how long it would take for most families to upgrade their operating systems to Longhorn, I doubt it would even be a consideration for the PC game development companies. I think it would be more focused towards rapid application development (mainly concerning business apps etc) like MFC was. However as time goes along, more and more people will be using Longhorn, but even then, if you're developing a cross-platform app or console game, it still wouldn't be a consideration.
I give credit to Microsoft though for developing this code base. It seems that they too are tired of seeing shitty coders flooding the industry, and thus must constantly provide more and more tools for them to use "safely" =P
"Oh crap, I walked into a pole and broke my nose. I know! I'll invent the all new improved 'Nose Guard 2004'"
Edit: Also, I really hope that managed code can't be reverse-engineered as it can in java. God that would suck.
I give credit to Microsoft though for developing this code base. It seems that they too are tired of seeing shitty coders flooding the industry, and thus must constantly provide more and more tools for them to use "safely" =P
"Oh crap, I walked into a pole and broke my nose. I know! I'll invent the all new improved 'Nose Guard 2004'"
Edit: Also, I really hope that managed code can't be reverse-engineered as it can in java. God that would suck.
its all compiled to the IL, so reversing it shouldnt be that hard really, if only because the compiler which is used on first run requires lots of infomation to compiler the IL to machine code.
As for C#, it certainly has a future in RAD and game tools and even games, it even has some crossplatormness, however I still see C++ dominating the landscape for some time to come because, why C# is only slightly slower the arguement could be made that, for stuff which matters, you are better off pushing for all the speed to do things better. So, game engine cores will probably remain C++ for sometime, there is already a large push towards scripting things with the likes of python and lua, so maybe stuff that can be scripted will end up being done in C# for games which are only ever likely to run on a .Net supported platform.
Anyways, the above are just guesses, all will become clear in the fullness of time, and now, to look at what Cw is...
As for C#, it certainly has a future in RAD and game tools and even games, it even has some crossplatormness, however I still see C++ dominating the landscape for some time to come because, why C# is only slightly slower the arguement could be made that, for stuff which matters, you are better off pushing for all the speed to do things better. So, game engine cores will probably remain C++ for sometime, there is already a large push towards scripting things with the likes of python and lua, so maybe stuff that can be scripted will end up being done in C# for games which are only ever likely to run on a .Net supported platform.
Anyways, the above are just guesses, all will become clear in the fullness of time, and now, to look at what Cw is...
Quote:I don't. OO is a tool, not a silver bullet. Always prefer a multiparadigm language (albeit one with fewer warts than C++).
Original post by colinisinhere
I like the idea of an all OO language.
Quote:Who really gives a shit? Does it meet your needs? Then use it.
But... Will this language replace C++?
Quote:Yes.
Is this language good for game developers?
Quote:Yes. (I would link to Tao.OpenGL, but the homepage is perennially down.)
Does it work well with OpenGL?
Quote:Yes, and they're almost all stupid. And prohibited on GDNet.
Are there any articles or threads on C++ vs. C#?
Quote:
Original post by Ravuya
If managed code is the future, then Java would have been met with much more success than it did.
Actually that would prove that managed code is something that will be highly successful and you could easily argue that it has been one of the most successful especially given when it was released... considering Java is one of the most widely used languages in business. For games it is a completely different matter though obviously.
Quote:
Original post by Wavarian
I give credit to Microsoft though for developing this code base. It seems that they too are tired of seeing shitty coders flooding the industry, and thus must constantly provide more and more tools for them to use "safely" =P
Have a pause for thought about implying bad programmers need help to program safely. Good programmers need it too. The vast majority of security problems that are plaguing the security world today are due to buffer overflows because languages like C and C++ gave programmers the option to not range check array accesses to increase execution speed. You can check a large C and C++ program as hard as you want, but you can _never_ be sure it doesn't have a buffer overflow in it. Even expert programmers will create buffer overflow bugs at some point. I gladly welcome language like Java and C# which allow a safer programming environment and should hopefully put an end to having to apply continuous security patches to C programs as more buffer overflows are found in them. The current situation seems incredibly backwards and primitive to me. Programming is hard enough without having to use tools which allow hundreds of ways to invoke undefined behaviour.
Quote:
Original post by Daniel Miller
It is "the" langauge for Longhorn. So, it will replace C++ on the Windows side of things.
Not quite, .NET is "the" development tool for Longhorn, and you program with .NET in C#, C++, Python and a whole load of other languages.
Quote:
Original post by Ravuya
If managed code is the future, then Java would have been met with much more success than it did.
Possible, but Sun didn't put the whole weight of their product lineup behind it like MS does with Longhorn.
Quote:
Original post by seanw
The vast majority of security problems that are plaguing the security world today are due to buffer overflows because languages like C and C++ gave programmers the option to not range check array accesses to increase execution speed. You can check a large C and C++ program as hard as you want, but you can _never_ be sure it doesn't have a buffer overflow in it.
If you have vs.net2k3, there is a compiler option that can help a bit.
Quote:
all consoles use unmanaged code in C++ and I cant see them changing anytime soon
I believe the main reason MS wants the CLR is so that they're not beholden to Intel anymore. After all, you could write a MSIL interpreter for PowerPC just as easily as for x86. And, by the way, the X-box 2 uses PowerPC. And, by the way, there are rumors of a "simple PC" based on X-box 2, coming out in 2006 (assuming X-box 2 makes it out in 2005). All of this doesn't sound very far-fetched to my ears at all.
C# is sexy, and about the only major hurdle going back and forth between C++ and C# (which I do) is the very very very strange (to a C++ programmer) behavior that C# and Java have when it comes to the value types (structs in C#, primative types in Java) as opposed to reference types (classes in C# and Java).
But I still love my C++ too. In fact, I find modeling complex problems much easier in C++, while I find getting a simple well defined task done easier in C# ... but that's just me.
But I still love my C++ too. In fact, I find modeling complex problems much easier in C++, while I find getting a simple well defined task done easier in C# ... but that's just me.
I doubt C# will replace languages like C/C++ (in its current form at least), but it's very useful in its place. C# is great for tools and pipelines for getting content into a memory-ready format for use your runtime code. Managed C++ is handy for some of the native/managed interop stuff too, although C# is often still quite appropriate.
C++ will undoubtedly be superseded for mainstream game runtime development at some point, but I can't see it happening any time soon, and especially not with C#.
C++ will undoubtedly be superseded for mainstream game runtime development at some point, but I can't see it happening any time soon, and especially not with C#.
Topic Locked
This topic has been locked by a moderator. New replies are not allowed.
Sign in to reply to this topic.
Advertisement