Archived

This topic is now archived and is closed to further replies.

Webbster

The Effects of .NET?

Recommended Posts

Webbster    122
The past few months I have begun to ignore the fact that there has been a sudden rise in Microsoft''s newest technology (well more than a few months then), .NET! Due to my ignorance I have absolutely no idea what this means for us as games / programmers. I hear this word ''Managed'' used on the end of several different entities such as DirectX, and wonder how this affects a C++ programmer in anyway. How does all this new technology tie into the .Net Framework, and what does it mean for the future of things like C, C++, OpenGL if one wishes to continue programming on the windows system? Does C# programming really have a future in professional game development, because if it does, doesn''t that mean that consoles of the future will require the use of a built in .Net framework? And what about my currently self taught knowledge, should I be changing all of my C++, OpenGL, Data Structures, etc. books for ones focusing on game development with C# and .Net? This has probably been asked a thousand times (sorry if it has) but I would be really greatfull if anyone could give me some general information on .Net''s affect on Pro. Game Development, because I have so many thoughts and worries as to the way technology is going to change by Longhorns release. Thank you, Webbster

Share this post


Link to post
Share on other sites
alexmoura    450
Answering the question that wasn''t answered before, while I doubt we''ll see a managed game on this generation of consoles, you technically could do it - I believe the xbox for example doesn''t include directx - it has an extremely small os, and all the libraries required by a game are included in the dvd - this allows for newer games to use newer versions of those libraries(with the added advantage that each game works against the exact version of the libraries it was tested against, avoiding dll hell issues)

Share this post


Link to post
Share on other sites
brann    122
the xbox 2 will support managed directx, microsoft said

right now, c# + managed directx is 7% slower than c++/directx, according to a benchmark based on quake 2, but keep in mind that c++ compilers have over 10 years of optimisations, while just in times .net compilers are pretty new

the productivity gain you earn whith c# is just huge
i''ve been programming in c++ for years, and after only a few month of c#, i''m doing things a lot faster with c#

switching from c++ to c# is very easy, so give it a try

Share this post


Link to post
Share on other sites
C-Junkie    1099
*sighs*

I know I''m progressing towards the position of Resident GDnet C++ elitist, but seriously...

The very fact that you have to ask about what it is or why its better should raise a flag in your head. Hey! this might just be piles of hype!

C# isn''t as easy to tear apart as D, since microsoft has pushed the language into a standards agency, as well as producing a wicked library for their language, but I /reaally/ don''t like "Managed" code.

The compiler has every bit of information it needs to produce code with zero memory leaks. now, C++ doesn''t do this automatically, although it really trys to provide facilities for it to be done implicitly, so i''m not preaching C++ gospel this time, but the whole concept of a garbage collector is just repusive to me. personal preference.

That lumps C# and java together, except I don''t view them that way. C# has one more liability that java doesn''t: microsoft. They aren''t creating a language for the benefit of humanity here, they''re doing it for profit. Ponder that. (Sun lacks the "evilness" factor that makes that a liability. sure i''m a microsoft hater, but you can''t say its undeserved.)

Share this post


Link to post
Share on other sites
Well, let me address the first post:

I was a C++ coder for over . . 7 years, I''d say. Then this last December I switched to C#. Holy crap, it is awesome. C++ can do so much, and is an amazing language, but sometimes it just takes years of usage for problems to arise. And that''s just what C# is all about. It lets you do *almost* everything you could do with C++, and everything else can be done another way.

What will it mean for games of the future? The gamer won''t see a difference at all. However, teams will be much more productive, meaning that games will be developed quicker.

It will be interesting to see if MS works with competing game systems to license .NET technology, or if either party will even want to be part of this semi-alliance. After all, the XBox is in competiton with the Gamecube and PS2.

To address a few things C-Junkie stated:

I''m glad you at least threw in that it was personal preference of not liking garbage collection. I must admit, when I first started C#, it didn''t feel right. I''d always say "Wait, I have to delete!!!!", but then remember it was all handled. As always, a switch can be difficult, but managed code helps lift a burden that I am glad is gone.

And MS is evil, but so is Sun, and so are you for having a job. The fact is businesses are there for profit. You could spin it any way you want, but corporations live off of money, and die if they don''t make it and grow. Sorry, but I''m also a business student and I cringe when I see people saying MS is bad because they try to make some money.

Trying to change the world for the better might not be their first goal, but let me say that as far as game programming does, I think they sure have made things better. And that is my personal opinion

--Vic--

Share this post


Link to post
Share on other sites
Max_Payne    757
I keep hearing people saying that C# makes you "more productive", but I have to ask: how so?

Besides from the fact that "forms" are easier to work with than microsoft''s win32 API, which quite frankly, not much people like, how does C# improve anything?

Can you code your classes faster in than language than in C++ or java? does it think for you? Are you going to tell me it avoids memory leaks? Because I don''t really get memory leaks, and I don''t see such mistakes as a big time slow down factor.

Again, how does C# improve, is it just the new apis provided by microsoft, which could simply have been done in C++ that prove useful?



Looking for a serious game project?
www.xgameproject.com

Share this post


Link to post
Share on other sites
Oluseyi    2103
quote:
Original post by C-Junkie
Sun lacks the "evilness" factor...
It''s investors don''t agree. Do you realize that Scott McNealy is Chairman, CEO, COO, CFO and all other "Chief" positions (effectively)? Senior leve executives have titles like "Senior President for Technology." That''s sheer paranoia on his part, which makes him scarier that Bill Gates. We''re just lucky that his company isn''t half as dominant as Microsoft (despite the negative pub, Microsoft has been surprisingly benevolent with their power).

In any case, you failed to construct a valid argument. Yes, you inserted the "personal preference" disclaimer, but it doesn''t help the original poster now, does it? A valid strategy would be a genuine comparision of the pros and cons of the technology within well-defined constraints. This has been done in previous threads.

@Max_Payne:
Coder productivity is a function of abstraction. The less you have to think about multivariate low-level issues, the more you can concentrate on macro issues like design and effectiveness. Yeah, you can''t necessarily code a single class faster in C++, but you can code an entire application faster. If such claims were spurious, then nobody would ever use anything beside assembly.

But don''t take anybody''s word for it: try it yourself. The .NET Framework comes with the C# command line compiler; SharpDevelop is a free C# IDE written entirely in C#.

Share this post


Link to post
Share on other sites