http://blog.9cbs.net/liuhong/archive/2004/10/10/130610.aspx.net remoting From the Com (DISTRIBUTED COM), Microsoft plays a player's role. If COM provides an object communication technology on a Windows platform, it has gradually become the mainstream of technology between the applications and interaction, then DCOM is the communication and interactive technology that solves the computer.
The focus of COM is that the communication needs between different applications on the same computer are not the field envisaged by COM. Fortunately, the communication between the cross-programs and the computer communication is only in the processing of the communication protocol (that is, the positioning problem), and the processing of the differential differences in data exchange is not therefore different. So let COM's environment can further extend to the field of computer, as long as properly solve the needs of computer positioning, there is an opportunity to overcome. The same luck is, COM does not touch the problem of computer in the first design, so that it is necessary to deal with the original architecture on the architecture of COM. So COM's network extension version of DCOM (Distributed COM) occurs this, and the Typographic COM component can continue to serve in the network environment. DCOM is most important to handle two issues. The first topic is network communication capabilities, and the second issue is the issue of authority. Previous COM is looking for a specific component in the same computer, and DCOM should go further to find a computer on the network, and then find the components on the computer along the COM.
In the .NET, there is also a need for the corresponding technology in .Net, .NET Remoting is a technology corresponding to DCOM, which makes survival in different application domains (Appdomain, a new concept in a .NET), different Execute the program, and the objects on different computers can communicate smoothly. After accumulating the experience of a long-term distributed application, Microsoft has no reason to design something more difficult. In a sense, .NET Remoting provides a development architecture that is easier to use than in the past, used to support communication operations across computers, and the provincial developers must spend the heart, but such a "excellent" "Distributed Application Framework did not get" treatment "that should be obtained. Compared to Java's RMI, it is more simple to maintain design flexibility while abandoning some of the shortcomings of DCOM. In the front-rear end, interactive operations must be combined in a state, and also expect calls and data exchange. In the event of an environment in which .NET Remoting is a relatively appropriate option.
However, the problem is that Microsoft itself has made .NET Remoting lost its own position. That is to say that XML Web Services has made .NET Remoting forgot the role you should bear, so in the eyes of developers Become a "unable" work, at least for many developers, first considering XML Web Services when you need to create a distributed application, but in the internal application, especially in the control server and In the case of a client platform (such as the application based on the .NET platform), Web Service cannot reflect advantages due to efficiency and so on. From the technical itself, .NET Remoting is a very excellent architecture, but in business, this is a failure. After all, it is difficult to design a good product.
.NET Remoting is precisely the victim of this strategy, although there is a benefit, but still can't come.
Enterprise Services From a very direct feeling, Enterprise Services is just a packaging of COM , from the usage method and technology itself, and the use of COM services under VB or VC, and more is only more The packaging of a hosted code, allows .NET developers can more smoothly use the functions of these services. Compared to the application server, the application server such as the J2EE platform, such as the weblogic, IBM's WebSphere or open source JBoss, Microsoft is hope to be able to divide a cup in an enterprise application, but because of the reason for the innate application, the business needs in the enterprise application , Load balancing, failover, etc. The performance is not so much, at least a very clear application server (Application Server) concept, although Microsoft's emphasis on the operating system itself is an application server, an IT information basic structure. But from the actual use of developers, this is a product of "obscured".
Although .NET Framework has changed a lot, but as the most important support technology in enterprise applications - did not get the same degree of development. I think this is a lot of large enterprise applications. Net does not choose .NET Always, after all, from MTS - COM - Enterprise Services, this way to come to Microsoft is not to provide a very transparent mechanism to let developers to control all aspects (may be related to Microsoft's consistent strategy, just concerned the most extensive application Instead of the highest-end application), the so-called business service in .NET, the equivalent EJB provided by the competitors still has a relatively large gap, which is a soft rib with a few days ago.
From the beginning, Microsoft is launched as a "high-head", and it is interesting to increase XML, then the "XML Web Services" becomes a very important term in the .NET strategy, just as Microsoft's white paper "Microsoft? Net is Microsoft XML Web Services Platform", Microsoft changes the existing internet structure through .NET, "Windows is moving to the past" is that communication between each subsystem is completely based on Web Service In such a way, a series of issues that have been placed in Win32 developers have been troublesome, and they can be solved and can be developed with more languages.
"Everything is Web Service", this is a persistent move, at least for 4 years ago, and these four years, although Web Service has a lot of advantages to let us "song", but not "Wanjin", For example, the performance and security issues that have been shed are also hindered by Web Service, so other distributed application architectures can still have their own living space in a particular area.
This time, Microsoft overestimates Web Service, although current .NET is the best platform for XML Web Services, Visual Studio .NET also provides packaging from top to bottom, so that developers can completely do not care about the underlying implementation of the protocol For example, SOAP, such as object serialization, such as WSDL, because everything can be done automatically in the IDE. We don't deny that because .NET, Web Service has already entered the application from the concept, and the introduction of WSE 2.0 is more web service with interoperability, but it is still unable to change the development of developers. Only in enterprise external network application or internal heterogeneous platform When integrated, it can reflect advantages that the Web Service is just a myth of the WEB Service in terms of high-level response and service support. Asp.net We cannot deny that this technology is a subversive change for developers. From static HTML to CGI to the ASP / JSP / PHP era, we must understand HTML, understand HTTP, for high levels In the case of developers, it is still far more than this, and we must understand the details of the implementation, including HTML, JavaScript, CSS, and Server-related request, response. Directly, developers must strictly control all HTML and their related content, and the script is just a "automation" relative to the CGI hierarchy.
Then, ASP.NET changes all this, and WebForm allows web developers to process page events as Windows developers, while fully accessing powerful .NET Framework class libraries, and pre-compiling mechanisms solve ASP has always been efficient Low problem. On the design of the server, httphandler and httpmoudle are implemented on the basis of ISAPI, providing developers with a high degree of expanding, and a mature WebLog engine. TEXT is the classic of these technologies.
XML Web Services' built-in integration makes ASP.NET's best implementation of Web Service applications. A considerable Web Service on the market is based on ASP.NET, and ASP.NET has far exceeded Java. Group technology, including JSP, including Struct, including JSF, other related web application technology, very well integrated in ASP.NET.
We can't deny this fact, a quite part of the developer (I personally think is mostly) developers turned to .NET is because ASP.NET, for ASP developers, ASP.NET provides a more powerful function, many in ASP Problems in which component technology must be resolved, for example, file uploads have become built-in support on new platforms, and of course, more important is to rely on Visual Stuio.Net powerful integrated development environment to increase productivity. And the developers of the other platform turned asp.net. I think it is because of the elastic design and its convenient development, I believe that there is not much more people who will suspect that ASP.NET has been in the forefront of Web development.
Of course, there is no absolute perfection, before .NET Framework 1.1 (which is the second version of .NET), too many postback is also a complaint that developers complained, and uses WebForm's development method to make many developers are not So easy to deal with client scripts, all event implementations are dependent on ViewState, so network applications under low bandwidth, constantly submit, and some users feel "annoyed".
This world has no absolute perfection, but it will be perfect at a little bit, maybe ASP.NET 2.0 has too many things worth looking forward to. ADO.NET believes that everyone will not forget ADO (ActiveX Data Object), I want Windows on the database development of the database to develop popularity, through unified interfaces, to implement access to the database, so that the complex database access protocol is blocked. The .NET era, ADO.NET further access "evolution", do not think that ADO.NET is just an upgrade of ADO, providing a managed class library technology in ADO, except for data access framework, other not too Multi-essential correlation.
Although ADO.NET brings a lot of other technologies, there can still have a lot of things worthy of us to be happy. After all, innovation is always a good thing, let alone innovation brought by this most successful software company, then we come I saw what I brought to:
1. In addition to providing traditional ADO's connection, Command, we accidentally did not see the objects such as Recordset, but provided DataReader to process data access to forward scrolling, the most important thing is to join DataSet concept, because In this way, we can realize the "disconnected Application" required in many database applications, which enable "Inproc-Database", and all this, can get a good solution to DataSet.
2. The database connection pool is provided in a more transparent manner, while the developer can control the specific operating mode by becoming.
3. Propose DataAdapter to allow developers to access the xenograft in a unified manner, the only difference is that the implementation of the specific adapter is different.
4. "Typed Dataset" allows developers to be very convenient to map Table, Field in DataSet to custom classes.
5. For XML, it provides good support, all DataSets can be very easy to serialize or inversely formulate XML documents.
Of course, ADO.NET is not universal. It is obviously better than Java in data persistent layers, and there is no very good O / R mapping tool until now, and Java's Hibernate is very mature, ADO. Objectsapce in NET 2.0 may change the current status, let us wait patiently, although it takes to 2005.