What is the difference between .Net and Java?
July 28, 2010 12:16PM
Differences between .Net and Java include
- Java is from Sun, .Net is from Microsoft
- Java is a language plus a runtime, .Net is a runtime framework that supports multiple languages, Visual Basic and C# (the .Net language most similar to Java) among them.
- C# is very similar to Java but a few years younger, and a bit nicer in some respects - it has a slightly simpler syntax for some common constructs.
- Java is more platform independent, it runs on several operating systems including Windows, Mac and Linux. .Net is primarily for Windows. Although the open source project Mono is developing a multi-platform runtime for .Net, so this is less of an issue than it used to be.
- .Net has a more integrated development environment, as the IDE, runtime and server all come from Microsoft as a standard package, while Java is based on third-party tool and server providers. It used to be the case that the .Net development environment was clearly superior, but the difference is smaller these days.
- It can be argued that Java gives more flexibility, as there are more server- and IDE-providers to choose from, at the cost of some extra overhead for the developer to get the different pieces to work together.
Functionality wise, there is not a lot of difference between the two, at least not when used to develop web applications.
For desktop applications, .Net naturally has an edge in Windows integration.
note: Oracle bought Sun Microsystems (Sun).