Click here to Skip to main content
15,884,838 members
Home / Discussions / .NET (Core and Framework)
   

.NET (Core and Framework)

 
GeneralRe: Creating DLL in visual C++.NET Pin
srikkanthank9-May-04 5:06
srikkanthank9-May-04 5:06 
GeneralToString(); Pin
gman447-May-04 14:29
gman447-May-04 14:29 
GeneralRe: ToString(); Pin
srikkanthank9-May-04 5:17
srikkanthank9-May-04 5:17 
GeneralMC++ or C# for user controls Pin
Julien Delezenne4-May-04 15:17
Julien Delezenne4-May-04 15:17 
GeneralRe: MC++ or C# for user controls Pin
ian mariano8-May-04 6:50
ian mariano8-May-04 6:50 
GeneralRe: MC++ or C# for user controls Pin
Julien Delezenne9-May-04 2:43
Julien Delezenne9-May-04 2:43 
General.NET advantage over JAVA Pin
mmikey74-May-04 11:43
mmikey74-May-04 11:43 
GeneralRe: .NET advantage over JAVA Pin
Jeff Varszegi4-May-04 12:22
professionalJeff Varszegi4-May-04 12:22 
Here's how I see it, as somebody who uses Java and .NET every day:

.NET ADVANTAGES
---------------

1) Good to great integration with Windows, Active Directory, and other Microsoft products and services

2) Ease of integration with C++ code (in Java you must use JNI, not much fun)

3) The C# language is a little cleaner than Java and provides better support for OO development, with properties and a richer set of keywords. (A few things can actually subvert good OO design, like method hiding, but you don't have to use those features.) The language is more suitable for lower-level work than Java, while still providing all the features of garbage collection, multiple-platform deployment, etc.

4) The marketing muscle of Microsoft, nothing to sneeze at, means you'll be looking at green pastures for a while. Microsoft is also committed to supporting .NET for the foreseeable future, and has based much of their corporate strategy on it going forward.

5) The .NET runtime is better optimized for some things; object creation is less expensive in general, method-call overhead is a little less, etc.

6) The CodeDom namespace simplifies the task of dynamic code generation, something not supported in the Java core libraries

7) Excellent, excellent free documentation on everything you may want to do in .NET, with further support through the usually-excellent Microsoft Press books as well as authors of third-party publications (our own Nish and Tom Archer being a good case in point)

8) Ease of deployment for Web services is still far better than anything you'll see from a third-party Java tool IMHO, although I haven't seen the latest versions of Websphere Studio and BEA's tools

9) ASP.NET is better suited to RAD for presentation purposes. I'm sorry, JSP fans, but it's true; I know from experience.

10) Microsoft-centric developers are a little less likely to spend four hours a day at the water cooler engaging in object-oriented oneupsmanship.


ABOUT EQUAL
-----------

All in all, it seems to me that they're about equal in terms of what's provided in their base libraries. Their security models are equally powerful and extensible, although with .NET you'll find it easier to work with Active Directory than othwerwise, no surprise there. Runtime speed of code is about the same in my experience, although I'd bet that calling native code on Windows works faster in .NET than in Java. They both have open specifications. They both have support for embedded code and small devices, with .NET support on the latter growing all the time.


JAVA ADVANTAGES
---------------

1) Actual support for "write once, run anywhere". If you need to deploy on Linux or Unix, Java, C/C++, and/or something like Perl is still your best bet. Mono, the leading *nix implementation of the .NET framework, is still not as mature as the Microsoft implementation, and for reasons that'd require lengthy explanation, the two will probably never be fully compatible.

2) Better support for non-Microsoft technology. This is mostly just because of Java's longer history; while there are rabid .NET fans out there at this moment cooking up reams of open-source code to do just about anything imaginable, the jarheads have a head start. For instance, if you need to write an application to use multiple databases, just about every modern database vendor now provides a great type-4 JDBC driver, but support for .NET data providers is still not complete. (You can mitigate the effect of code branching by using a decent Data Access Layer in .NET.) Oracle and DB2 stored procedures can even be written easily in Java; both IBM and Oracle have invested heavily in the future of Java.

3) Lower cost of entry. I might make some people angry here, but you can still download Java for free and install it on your free Linux OS, and even run your applications on a free Java-based application server like JBoss, the same applications you developed on your free IDE. (.NET has free IDEs available also, such as SharpDevelop, which are great for the price but nothing near as good as Visual Studio .NET .) Total cost of ownership of a high-end site is debatable by wiser and more knowledgeable heads than I.

4) Better support for middleware, with the EJB standard. This is something that's currently lacking in .NET, although I'd guess that the plan is to sell extra "Yukon" licenses as middleware servers, since you'll be able to program stored procedures and other server-side objects in .NET-supported languages in that future version of SQL Server. (Of course, Jonathan Schwarz proclaimed the upcoming death of middleware in a recent issue of Java Developers' Journal. Also, Microsoft has chosen to go with a distributed-component model that is more services-oriented than Sun's; one can argue that this makes it less reliant on middleware from the start. Most applications don't need something like an EJB server anyway.)

5) A bigger developer community. This means you can get Java developers on the cheap, even easier than .NET coders. The .NET programming community seems to be more tightly knit, however, and is growing daily.

6) More access to the source and underpinnings of Java. In addition, there are many companies that provide Java Runtime Environment (JRE) implementations, in addition to Sun.

-Jeff

here, bloggy bloggy
GeneralRe: .NET advantage over JAVA Pin
mmikey74-May-04 12:45
mmikey74-May-04 12:45 
GeneralRe: .NET advantage over JAVA Pin
Jeff Varszegi4-May-04 14:22
professionalJeff Varszegi4-May-04 14:22 
GeneralRe: .NET advantage over JAVA Pin
Mike Ellison8-May-04 4:46
Mike Ellison8-May-04 4:46 
GeneralRe: .NET advantage over JAVA Pin
ian mariano8-May-04 6:51
ian mariano8-May-04 6:51 
GeneralRe: .NET advantage over JAVA Pin
Jeff Varszegi8-May-04 7:08
professionalJeff Varszegi8-May-04 7:08 
GeneralRe: .NET advantage over JAVA Pin
Jeff Varszegi8-May-04 7:07
professionalJeff Varszegi8-May-04 7:07 
GeneralA licensed windows forms control on a web page Pin
Patrick Lassalle4-May-04 11:02
Patrick Lassalle4-May-04 11:02 
GeneralRe: A licensed windows forms control on a web page Pin
ian mariano8-May-04 6:59
ian mariano8-May-04 6:59 
GeneralSOAP Server Pin
Patje4-May-04 3:15
Patje4-May-04 3:15 
GeneralRe: SOAP Server Pin
ian mariano8-May-04 7:12
ian mariano8-May-04 7:12 
GeneralRe: SOAP Server Pin
Patje10-May-04 21:20
Patje10-May-04 21:20 
GeneralRe: SOAP Server Pin
Ryan Roberts11-May-04 6:54
Ryan Roberts11-May-04 6:54 
GeneralRe: SOAP Server Pin
Patje11-May-04 21:15
Patje11-May-04 21:15 
GeneralXPathDocument vs. XmlDocument Pin
Paul Watson3-May-04 23:26
sitebuilderPaul Watson3-May-04 23:26 
General.net components site like boland delphi vcl sites(www.totty.net) Pin
Anonymous3-May-04 11:27
Anonymous3-May-04 11:27 
GeneralRebasing Pin
Ivan Fernandez3-May-04 3:18
Ivan Fernandez3-May-04 3:18 
GeneralRe: Rebasing Pin
ian mariano8-May-04 7:16
ian mariano8-May-04 7:16 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.