Helpful Information
 
 
Category: .Net Development
Why C#?

I'm just curious about why this language interests people. Isn't it just Microsoft wanting their own java? I'm not slamming them or anything. I'm just wondering why someone would go this route. I'm curious to how successful it will be. Is it intended to be cross platform? Microsoft's a very distant 2nd to Apache in the web server market. I wonder if .NET is going anywhere.:confused:

I am interested in C# as it pertains to ASP.NET. I have only begun to scratch the surface of it, but I already like what I see. From the looks of things, it makes dynamic Web page creation a snap. I'm sorry I don't have much to offer beyond that - no in-depth comparisons to PHP or Java. Maybe in a couple of months. :)

AFAIK, there is an effort to port ASP.NET to Apache - Mono? Something like that. If you're serious about Web development, you owe it to yourself to look into .NET. Almost everything MS does these days is geared toward .NET, so it will be around for a while. You may find that you don't like it, or that you don't need it, but it has some very cool features. C# is not as accessible as PHP, but it's not a difficult language to learn.

IMHO c# will be very successfull in the future, when the majority of windows user have switched to Windows XP or have installed the .NET Framework.

Yeah, Mono http://www.go-mono.com/ is the project to create a full open source implementation of the .NET Development Framework on Linux. They still lack a lot of classes, but it's just a matter of time till they have a (nearly) full implemenation and then you can really build cross platform applications with c#.

You can't really compare ASP.NET with php and Apache, since ASP.NET is much more compareable to J2EE Servers. The main difference to PHP is that ASP.NET pages are compiled to "binary" (CLR compatible binary) code and are therefore nearly as fast as any other *real* c# application. The server doesn't have to parse over and over an every request the .aspx file, it just have to execute a method on the class object of the current page. (Same as jsp server do).

> I wonder if .NET is going anywhere

Under Windows...in a few years, the .NET Framework wil be the main developing platform and with projects like Mono, it will even gain more success.

> Isn't it just Microsoft wanting their own java

The main advantage behind java was its easy syntax, no platform dependent code (e.h. no #ifdef hacks) and no platform depend binaries, using platform independ binarys and a virtual machine for execution - and that's the future in software delopment. That's the next logical step in the Visual Studio series and therefore it wasn't really surprising that c# is very similar to java.

I have to agree.

C# is a good language. I started learning it a few months ago, and so far I've been impressed.

Despite being very anti-microsoft in the past, I've found c# very enjoyable and it's now my language of choice for building Windows applications. Also ASP.Net is a lot of fun.

There are also other advantages like being able to mix and match different languages into a single application. And no more DLL Hell ;)

If you haven't tried c#/.Net yet, give it a chance and try it. You might like it!

I don't doubt that C# is a good language. But I wondered why not just go with Java. Sure, Microsoft doesn't want to support Java on their platforms. But they may have to. Are there any advantages to C# over java? I've been considering learning one of these languages, but haven't decided.

i need to correct some definitively wrong stuff here:

.NET is not comparable to JAVA. it´s a different approach.
JAVA is platform-independent, one language, one compiler.
.NET is platform-dependent (may change in the future, see "mono" - but i doubt they will port Excel::Worksheet or MSAccess::Query to linux :( ), many languages, many compilers. They could even make "JAVA.NET" (imho only a matter of time).

both share that the compiler produces bytecode that is run by a virtual machine.

- php can be compiled just the same way but you don´t have to
- .NET does NOT come with Windows XP but with XP SP 1.
- "And no more DLL Hell" - wohuhaha. "Class Hell" and "Framework Hell" will be the future replacement. had a look at your "administrative tools" recently after you installed .NET framework?
- "From the looks of things, it makes dynamic Web page creation a snap" - yes, if you don´t care that only MS users can view your pages...
- MS was forced today to include JAVA. only till the court finally decided though. and i bet they´ll start making bugs in their JAVA VM just to discredit JAVA.

still, as much as i dislike MS taking over the world, it is not avoidable for a serious programmer to get a little into .NET... :(

- "From the looks of things, it makes dynamic Web page creation a snap" - yes, if you don´t care that only MS users can view your pages...

...

was that a joke?

Depends on what he means by dynamic web pages, ASP, like PHP, is all server side. From the clients perspective it is just HTML code. ASP can be written with VB or C# scripting.

The two main advantages I think C# has over Java are:

1) Speed.
2) A far better IDE then any of the various Java IDEs out there.

And though C#, like Java, runs through a virtual machine, the .NET virtual machine is far superior to that of Java. Look into some of MS’s articles on how it works and you’ll see why its performance is very similar to machine code and how the disadvantages of the virtual machine are *almost* offset by the advantages.

i dunno. i dont think .NET will make *that* much difference. at the end of the day all it offers a programmer is a library of classes with a VM. and we have that with java already.
if you need speed all you have to do is use the JNI anyway.

How many times have we seen MS make a mess of everything. it wont be long until .NET is a grumbling mess without structure or form. Sure, Sun arent perfect but id MUCH rather trust computer scientists than marketing leeches. And yes, i am running windows right now. and yes, only because i have to.

I think C# is gaining momentum slowly.. as opposed to .NET gaining popularity. I don't think .NET has done as well as MS may have hoped. Too complicated a concept for people to get excited about before they have actually seen how it works.

I like the fact that C# is more closly tied to GUI development than Java seems to be and I like the IDE. Searching for documentation is easier for people who are used to MSDN etc..

We also needn't forget that .NET essentially became a necessity when the courts forced MS to get rid of their proprietary Java VM. They lost the income they were generating as a result of J++.

As for ASP.NET, we aren't talking about embedded objects like we used to see with ActiveX components on pages. MS royally screwed a lot of people with that -- especially the Linux loyals who wouldn't touch Windows with Bill Gates' own hand. ASP.NET can be extremely powerful when structured properly, and in the end it's strictly HTML, which means anyone and their grandmother can view it as long as they have a Web browser.

but why not just use PHP?

well.. what I think is C# would have certain features, which are different from php.
If I'm not mistaken, I saw C# can create the window programs and can be used for web authoring too. I guess they can link together and it might be good for business website.

well.. what I think is C# would have certain features, which are different from php.
If I'm not mistaken, I saw C# can create the window programs and can be used for web authoring too. I guess they can link together and it might be good for business website.

is c# still valuable for a web developer or an overkill?

is c# still valuable for a web developer or an overkill?

7 years later and C# is still valuable. I can't believe you brought back a 7 year old post.

IMHO .NET provides some great libraries for creating applications. For example:

WPF
WCF
LINQ
Compact Framework
GDI+

However, as I have noticed in the past with Microsoft development you have to be ready to spend a lot of time understanding the small details to make it work efficiently. For example ASP.net allows you to create web pages in a matter of minutes but to improve performance you need to understand the view state, how LINQ creates SQL commands, what the compile model really means, etc...

IMHO .NET provides some great libraries for creating applications. For example:

WPF
WCF
LINQ
Compact Framework
GDI+

However, as I have noticed in the past with Microsoft development you have to be ready to spend a lot of time understanding the small details to make it work efficiently. For example ASP.net allows you to create web pages in a matter of minutes but to improve performance you need to understand the view state, how LINQ creates SQL commands, what the compile model really means, etc...

As I can see c# is a full fledged programming language. How much of it one should know from web development point of view. Or should one become of master of it first before studying asp.net?

As I can see c# is a full fledged programming language. How much of it one should know from web development point of view. Or should one become of master of it first before studying asp.net?

If you have any programming knowledge (ideally object oriented) you have enough to start learning ASP.Net and C#. I learned both C# and ASP.Net at the same time. Make sure your code is written so it be easily updated if you learn something new. For example I made the mistake of placing the presentation, logic and database layers in the code behind. This approach forces me to change all three layers when I change one layer. Had I place the layers in separate components I could work on one at a time and in theory not effect the other two.

Ahh the good on programming languages debate.

I like C# for business use but when at home or completing private projects I never use it.

For web development projects it has to be PHP, or RoR depending on the task in hand. ASP.net obviously runs on windows server which I have had some many issues with over the years it also has the higher price tag than apache based hosting on a linux server.

Personally I think asp.net is overkill unless being used on large sites. For small projects PHP or Rails cannot go wrong.

Personally I think asp.net is overkill unless being used on large sites. For small projects PHP or Rails cannot go wrong.

For your own projects and 1-ups, maybe. asp.net has its place in enterprise development even if it's just a "small" little intranet site used by only a few people. The same security standards can be applied throughout the company. You can internal hire Ted who's been developing your company's internal HR apps to do build your internal Accounting apps, and aside from dealing with the new suits there should be little difference in the way things are built, look, and feel.

In such eternal "debates" context is everything.










privacy (GDPR)