Page 1 of 1

question about the .net framework versions

Posted: Fri Aug 29, 2008 7:39 pm
by stevend
yeah i know its probably not that place but i am sort of new to .net and i am interested in using it for GUI based application development and some other things.

Anyways, since my last experiance with C# and the .net framework, 3.5 has came out. Does any body know if this is the standard now? Should most computers have 3.5? Should i build it using version 2.0 of the frame work for compatibility issues?

thanks for any suggestions.

Posted: Sat Aug 30, 2008 8:33 am
by torleif
.NET is horrible
  1. There are many versions. If you develop in .NET 2.5 and the user has 1.0, they're gonna have to download a another version
  2. It's not cross compatible
  3. Bundling .NET libs with your application is a nightmare
  4. If people download your software, and then they have to download more stuff, they get put off. (197 MB for .NET 3.5? get out of here)
  5. It's a bad rip off of Java and Java EE. Whatever .NET can do, java can do it better. Java is also older, so it will work on more hardware. Even your cell phone.
  6. Sometimes it's garbage collection goes wrong
  7. Slow bloated library is slooooooooooooow

.NET is just a collection of binaries for people too lazy to find the libraries they need.

Also by using it you have to sign a contract from Microsoft saying that they will butt rape you.

Posted: Sat Aug 30, 2008 1:40 pm
by stevend
well i have been trolling some forums lately for c# and also from my own usage ill drop in my 2 cents.
It's not cross compatible
.net is run by a standards commitee, and there is a linux project named mono which is in reality linux.net.
If people download your software, and then they have to download more stuff, they get put off. (197 MB for .NET 3.5? get out of here)
yes, but what if your developing for a small window of target users, maybe the people using your program ought to have the latest version of .net installed anyways :P
It's a bad rip off of Java and Java EE. Whatever .NET can do, java can do it better. Java is also older, so it will work on more hardware. Even your cell phone.
are you sure about that? and there is a compact .net framework which runs on some mobile devices, and even things like atm's
Slow bloated library is slooooooooooooow
its the skill of the programmer, not the library. my current c# port of a custom language lexer i am working on is much faster than the C++ one because microsoft has properly optimized the code which is the abstration layer you know as .net.
.NET is just a collection of binaries for people too lazy to find the libraries they need.
and irrlicht is just a api for people who are too lazy to program their own graphics engine??

use the right tool for the job man. if your making a windows program, and you are strapped for time, c#'s rapid devlopment would help alot.

are you seriously telling me your only choice for windows development is C++? do you still use MFC too?
There are many versions. If you develop in .NET 2.5 and the user has 1.0, they're gonna have to download a another version
heres kinda what i wanted to know, you mentioned 2.5 right away so im going to assume 2.5 is more commonly found on people pc's and maybe 3.5 is a bit new and not everybody will have it thanks for the help :P

Posted: Sat Aug 30, 2008 1:56 pm
by stevend
C++ is like a leprechaun, its hard to catch, can be very mystical, and has a lot of magic too it.

C# is like a new girl friend, fun to poke at for a while, then eventually either it clings to you, or you.... go back to your leprechaun?

either way, you still end up with a sandwich

Posted: Sun Sep 14, 2008 8:26 pm
by Tex Pine
We've used .NET for 3 years and then abandoned it. Here's why:

1. Deploying: like Torleif said, it's a nightmare to bundle. The best tool to do this job, BitFactory Softinstall, got out of the market.

2. Gamedev Tools: you can't really compare the amount of C++ resources for gamedev with C# resources. It's not even fair. We just had enough of building in-house libraries and dealing with poor .NET bindings of C++ engines.

3. Community: just like the Tools problem, gamedev communities are built round C++ and a number of other languages like BlitzBasic. Communities of .NET tools are still slim in comparison.

4. Code protection: you absolutely need some sort of code-encrypting tool like Xenocode. Decompiling C# code is easier than chewing gum.

However, there are pluses.

First, unlike people believe, on nowadays hardware for Windows desktops, .NET applications are NOT slower than C++. I know you will find dozens of comparison tables for specific procedures (and some of them, like substring searching ARE terribly slow), but generally the game will run as fast as the same code in "unmanaged" C++.

Second, it is much easier to DEBUG. Way easier. Certainly you can find C++ libraries and frameworks with almost everything you need, but the level of debug information and tools MS' Visual Studio offers for C# has no parallel. If you are doing XNA games, you can even debug the game running on your XBOX remotely in your PC through Live Arcade network (including breakpoiting)!

Third, I don't agree "Java can do it better". Pretty much the opposite, as developers are finding out:

http://news.cnet.com/8301-10784_3-9884500-7.html