guide
Read: Facing Microsoft's launched
.NET Framework
You may have the following questions:
¨ 准 Accurately speaking. What is the .NET platform?
¨ How to compare .NET architecture and J2EE?
¨ 一 From .NET architecture Dictionary What can we learn from the enterprise software development plan?
In this article, the author will unlike these questions.
Liao Yongkang Original Source: http://java.sun.com/features/2000/11/dotnetvsms.html
Even if you don't specifically write process for Microsoft platform, you may also hear Microsoft .NET. This is Microsoft's answer to the most recent series and non-video events. If you have read the news, from Microsoft's writings, or through incomplete technical information you get in the MSDN side, or you noticed the Microsoft Expert Developer Meeting (I have already demonstrated the .NET platform), you There may be at least two questions:
¨ 准 Accurately speaking. What is the .NET platform?
¨ How to compare .NET architecture and J2EE?
If you go deep into step, you may have the third question active in your mind:
¨ 一 From .NET architecture Dictionary What can we learn from the enterprise software development plan?
The .NET framework is a very early stage of its life cycle. Microsoft .NET sector will also develop it more deeply and carefully, but in any case, we have been able to make just right to justify these issues from existing information. Reply.
what is it? What is .NET?)
Now in many forums reflection to .NET, can't help but remember the fables of three blinds; The environment; some people think it is just a new programming language (C #); some people are a new data exchange and packets for XML and SOAP. Working framework. In fact, .NET contains these parts, and more.
First, let us see some specific details, browse a series of technical components that make up the .NET platform:
¨ C #: It is a new written description (book) component, which integrates the elements of C, C and Java and adds some features such as: metadata tag, related elements.
¨ "When the public language is running": It is in the intermediate language (IL) format, running byte code, using a language written code and object as long as the compiler is developed for this language, obviously capable of compiling into IL runtime.
¨ A group of basic components (components) that can be accessed from "public language", which provide various functions (such as: network function, package container feature, etc.).
¨ ASP.NET: is a new ASP version that supports the ASP into a public language runtime function (so using an ASP script written in any language, can be bundled with IL).
¨ Window format and Web format: A new UI component framework that can be accessed from Visual Studio. (User Interface = UI).
¨ ADO: A new generation ADO data access component (component) that uses XML and SLAP for data exchange.
How is .NET and J2EE?
As we can see .NET platform, there is a technical matrix (Baota) under its umbrella structure. Obviously Microsoft is to grasp the developers of the window platform, which is incorporated into existing platforms such as J2EE and CORBA substitutes. But how do you make top-by-item? One way is to make the .NET and J2EE as the following comparison list:
.NET J2EE Key Differences C # programming language Java programming language C # and Java all from C and C , most significant features (such as the namespace of the garbage collection hierarchy) in two aspects. C # borrows some of JavaBeans (feature properties, events, etc.) and adds some of their own concepts (such as metadata signs), but combines these features into different syntax. Java runs on any platform in a Java virtual machine, while C # is in the foreseeable future, running in the window ring. C # implicitly binds to the IL public language running, (see), then run in a reasonable order (JIT). Compiled byte coding or the entire compiled natural coding. The Java code is run by the Java virtual machine byte code, which is compiled by VM or JIT, or the entire compiles into natural code.
.NET public components (Fills ".NET Frame Structure SDK") Java core API high-level .NET components, including distributed access to XML and SOAP (see ADO.NET).
ASP.NET page (ASP.NET) Java Server Page (JSP) ASP.NET uses Visual Basic, and C # may have another language as a code segment. It is compiled into natural code when running through the public language (the corresponding correspondence "is like an APS, each time you parsing it). JSP uses Java code (segment or javabeans reference), or compiles to Java byte code (to be determined according to the JSP implementation system on-demand or batch). The .NET public language is run to use a group of shared components in a variety of languages when running in a variety of languages. Get precedence over all components of the .NET frame (common components, ASP.NET, etc.).
IL Public Language Runtime Java Virtual Machine and CORBA IDL and ORB Java Virtual Machine Procedures Allow Java byte Codes, running on the JVM on any platform. CORBA allows code for multiple languages to use a set of shared objects, running on any platform with ORB, is not tightly integrated into the J2EE framework. The same web components (such as JSP-based files) are not available on standard Java platforms, and some proprietary components can only be obtained by Java IDE.
Window format and Web Format Java Frame Transfer via the MS Visual Studio IDE instead of this article, supporting the Window format and WEB format RAD development, "Swing" (Swing) is supported in many Java IDEs and tools.
ADO.NET and SOAP-based Web Services JDBC, EJB, JMS, and Java XML libraries (XML4J, JA-XP) ADO.NET are built on the XML data exchange located at the top of the HTTP protocol (referring to remote data objects and multiple Data exchange between application bundles). Generally speaking, .NET's Web service assumes the SOAP signaling model. EJB, JDBC, etc. to separate data exchange protocols and developers, do not work in HTTP, KMI / JRMP, or IIOP top.
The table's comparison only grasped the surface phenomenon, here, summarize the comparison of .NET and J2EE:
¨ Features: .NET and J2EE provide equally excellent features, although different methods are available.
¨ Portability :. NET's core only works in the Windows environment, but in theory can support in a variety of language development (as long as the subset / superchard of these languages has been defined, IL has established IL translater). That is to say: SOAP's ability allows data packets to be performed on other platforms (components) and .NET components. And some elements in .NET: like SOAP, its recovery and lookup protocol, as a core component of the public part (IL runtime environment, the window format of ASP.NET and the web format "contract", etc.) still Microsoft masters, Microsoft only plays the role of the entire .NET development environment and runtime environment providers. In fact, I have long since I have requested Microsoft to disclose these procedures, but this is contrary to Microsoft's standard experience. On the other hand, J2EE can work on any platform as long as it follows Java VM (rules) and a set of platforms required for a set of platforms (EJB Package containers, JMS services, etc.). All of these define the procedures for J2EE platforms have been published, and public reading is available. Therefore, many suppliers also offer compatible products and development environments. But J2EE is a single language platform. If you call or access objects in other languages, it may be necessary to pass CORBA, but CORBA support is not partially existed.
Huge prospects:
The last few points described above outlines the differences in certain criticality of .NET and J2EE, and the role played by Microsoft. Microsoft is now doing two things for .NET: Integrating XML and SOAP into their information transfer scenarios, to open the path to .NET to other programming language developers and non-.NET components.
By interacting the language components, .NET is released Perl, Eiffel, Cobol, and other programmers, allowing them to play a Microsoft's "sand table" role. These language enthusiasts should especially abide by rules because most people in them feel constraints and delimited in Microsoft / Sun / OpenSource competition. Therefore, as long as XML and SOAP is used in his component to use XML and SOAP, Microsoft will support them to add open parts to their platform, and get rid of dedication.