.NET - what's the big deal?

.NET and JRE (Java Runtime Environment) are much the same concept. They are the framework in which the code executes.

JRE however only works with code written and compiled in Java. .NET is language independant and compilers have been written for most languages including J++ (MS's Java) C++, C#, VB, JavaScript, Perl, Cobol etc etc.

.NET is being used heavily for web front ends (aspx rather than asp pages) with the code behind the web page being compiled code rather than interpreted ASP 3 script. It is also a doddle to produce XML Web Services. MS are pushing it as a web technolody, but it is much more than that. You can write desk top apps (including Windows Services in VB - finally) as well, but they still need the framework.
 
a_unique_person said:
.Net is multi language, however.

So is the Java virtual machine. There are boatloads of languages that run under JVM; it's just that there's no monolith pushing them.
 
.NET, as many have said, is not a language. If anything is a "Java killer", it's C#.

Ah, C#. Separate out the hype, and coming from someone who is a certified Java programmer (so keep that in mind): it's not a bad effort, really. There are many things there that Java could use (properties, for example - the JavaBeans spec pretty much forces you to use getXXX and setXXX, so why not provide language support for it?), and some others that Java has already nicked (like foreach).

Other than that it comes down to personal preference. I am obviously a lot more familiar with Swing and the Java libraries in general, so while I feel more comfortable building things with Java I'm more than happy to admit that sufficient experience with the .NET libraries would mitigate or even invert this preference.

One thing I do think is worth mentioning: VisualStudio.NET, while a good IDE, is not as powerful as Java using Eclipse. Of course neither of these are language issues, though.
 
.NET, as a platform, isn't bad.

The problem is, it isn't particularly good, either. It's a great quick n' dirty way to set up complex applications, but the performance isn't that great and it's rather self-limiting.

With .NET, it's an all-or-nothing approach. You basically have to rewrite and redesign your entire system if you want to implement it.

For example, suppose your application involves a PHP-based website running under Linux/Apache, C++ middleware (also on Linux), an Oracle database running on Solaris, and a host of internal Powerbuilder apps (Windows) to talk to said DB. You, the IT manager, want to convert to a single development platform.

To convert to .NET, first you're going to have to convert to all-Windows. No more Linux, no more Solaris. Then you're either going to have to migrate to SQL Server or seriously tweak .NET to talk (efficiently) to Oracle. Finally, you're going to have to redevelop everything at once, or spend a considerable amount of time tweaking and hacking your code to talk to your "legacy" system--time that could be valuably spent developing your new application or maintaining the existing one.

To move to J2EE, you can use a much more imcremental process. First, you don't have to switch all your OSes around. You can keep what you have. Second, you can redevelop your website, middleware, and GUI apps one at a time--without major tweaking to talk to your existing systems. You can migrate your system to the platform a little bit at a time, with little performance issues or conversion problems. In short, you can convert to J2EE with fewer resources and more time to test and deploy properly.

.NET's fine and dandy if you're developing your system from scratch, or if your current system is already so antiquated or obfuscated that a redevelopment is a good thing. If, however, you already have a decent existing system and you simply want to improve its functionality and standardize development, J2EE's probably the way to go.
 
Thx all for the replies.

er question, maybe it was answered earlier, but......what in the fudge is "J2EE" - ? A Java-flavored .NET kinda thing?
 
bigred said:
Thx all for the replies.

er question, maybe it was answered earlier, but......what in the fudge is "J2EE" - ? A Java-flavored .NET kinda thing?

Java 2 Enterprise Edition. (And .NET was a response to J2EE--not the other way around.)

Java is just a programming language developed by Sun.

J2EE is an attempt to take that programming language and make it into a development platform--that is, capable of taking on the task of structured, tiered, distributed applications.

Servlets, JSP (Java Server Pages), Swing (for GUI apps), JDBC, Struts, JavaBeans, etc.--all these are part of the J2EE platform. They all use the Java language; in fact, they're really just class libraries developed in Java. Added all together, though, J2EE becomes a major structure for developing distributed apps.
 
I think that what you say is correct, Cleon. My boss, however, works in the manufacturing world, and all he sees are Windows boxes everywhere. For him, to sell stuff that works on Windows, and is made by Microsoft, is just commonsense.

I have worked in large commercial environments, and there were the odd mainframes around, but mostly Unix boxes. For me, Java makes a lot more sense from that point of view. From my bosses point of view, he never sees a Unix box.
 

Back
Top Bottom