125x125 Ads4

.NET vs. Java and Java EE

Wednesday, March 3, 2010 by aviator
See also: Comparison of the Java and .NET platforms and Comparison of C# and Java

The CLI and .NET languages such as C# and VB have many similarities to Sun's JVM and Java. Both are based on a virtual machine model that hides the details of the computer hardware on which their programs run. Both use their own intermediate byte-code, Microsoft calling theirs Common Intermediate Language (CIL; formerly MSIL) and Sun calling theirs Java bytecode. On .NET the byte-code is always compiled before execution, either Just In Time (JIT) or in advance of execution using the Native Image Generator utility (NGEN). With Java the byte-code is either interpreted, compiled in advance, or compiled JIT. Both provide extensive class libraries that address many common programming requirements and address many security issues that are present in other approaches. The namespaces provided in the .NET Framework closely resemble the platform packages in the Java EE API Specification in style and invocation.

.NET in its complete form (i.e., Microsoft's implementation, described in the Standardization and licensing section of this article) can only be installed on computers running a Microsoft Windows operating system whereas Java in its entirety can be installed on computers running any one of a variety of operating systems such as Linux, Solaris, Mac OS or Windows.From its beginning .NET has supported multiple programming languages and at its core remains platform agnostic and standardized so that other vendors can implement it on other platforms (although Microsoft's implementation only targets Windows, Windows CE, and Xbox platforms). The Java Virtual Machine was also designed to be both language and operating system agnostic and was launched with the slogan "Write once, run anywhere." While Java has long remained the most used language on the JVM by a wide margin, recent support for dynamic languages has increased popularity of alternatives; in particular JRuby, Scala, and Groovy.(see JVM languages).

Sun's reference implementation of Java (including the class library, the compiler, the virtual machine, and the various tools associated with the Java Platform) is open source under the GNU GPL license with Classpath exception.The source code for the .NET framework base class library is available for reference purposes only under the Microsoft Reference License.

The third-party Mono Project, sponsored by Novell, has been developing an open source implementation of the ECMA standards that are part of .NET Framework, as well as most of the other non-ECMA standardized libraries in Microsoft's .NET. The Mono implementation is meant to run on Linux, Solaris, Mac OS X, BSD, HP-UX, and Windows platforms. Mono includes the CLR, the class libraries, and compilers for C# and VB.NET. The current version supports all the APIs in version 2.0 of Microsoft's .NET. Full support exists for C# 3.0 LINQ to Objects and LINQ to XML.
Posted in | 2 Comments »

2 comments:

Unknown said...

Hire Dotnet developers from a company who has systematic and transparent project management in place. They should follow a step-by-step development process with established milestones.
Dotnet Development

absalonjadan said...

Betting guide for the UK with a Casino & Gaming History
It's 부산광역 출장샵 important to note that there are no games available in 대전광역 출장안마 the casino, and you can try your luck without making any deposit. That's fine 시흥 출장안마 in 전라남도 출장안마 UK, 경산 출장마사지

Post a Comment