XML, Web Services, and. NET Frameworks (1)

Source: Internet
Author: User
Tags format end execution net object model web services what interface access
The. NET Framework |web|web Services |xml Application Development technology is taking a qualitative leap, radically increasing the productivity of developers, and it opens the door to an application that leads to new concepts.

In the past, developers have been building applications by integrating local system services. In this mode, developers have access to rich development resources and can strictly control the behavior of the application.

Today, developers have largely freed themselves from this pattern and are committed to building N-tier systems with complex structures that integrate numerous applications throughout the network and greatly enhance the value of the application. This allows developers to focus on discovering the unique business value of the software without having to worry about how to build the infrastructure day and night. The joyful situation will come into being: the time that the software puts on the market is shortened greatly, the programmer's programming efficiency is obviously improved, the most fundamental is to develop the quality software.

We are entering a new computing age, the core technology of an internet age is "Extensible Markup Language", XML. XML creates powerful applications that anyone can access and use from anywhere. It greatly expands the function of the application and realizes the uninterrupted transmission of the software. In this large environment, software is not exactly the program that was installed from the CD, but it has evolved into a service that is similar to the caller's ID verification or pay-per-view television, where people can book such services through the communication media.

All this is achieved by combining tightly coupled, highly efficient n-tier computing with a message-oriented, loosely coupled web concept. We refer to this computational style as a Web service, which marks the beginning of a new era in the application development technology of mankind. A Web service is an application that uses standard Internet protocols, such as Hypertext Transfer Protocol (HTTP) and XML, to be functionally programmatic in the Internet and intranet. The Web service can be treated as a component programming on the Web.

In theory, developers can integrate Web services into an application by invoking the Web application Programming Interface (API), just as they would invoke a local service, unlike web API calls that can be sent over the Internet to a service located on a remote system. For example, Microsoft Passport Services enable developers to authenticate an application. Through the Passport Services program, developers can take advantage of the basic structure of the passport to maintain a user database by running Passport to ensure its normal operation, regular backups, and so on.

Loosely coupled

Distributing application logic across a network is not an entirely new concept, and distributing and integrating application logic across the Web is a new concept.

In the past, distributed application logic required the use of distributed object models such as: Microsoft's Distributed Component Object Model (DCOM), the object Management group's Common Object Request Agent architecture (CORBA), or the Sun's Remote method call (RMI). By using this basic structure, developers can still have the rich resources and accuracy to use the local model, and can place services on remote systems.

One common drawback of these systems is that they cannot be extended to the Internet: they require a tight coupling between the service client and the service itself, which requires a homogeneous infrastructure. Such systems are often fragile: if one end of the execution mechanism changes, the other end collapses. For example, if the interface of the server application changes, the client crashes.

The requirement to provide a tightly coupled basic structure is understandable, and many applications are built on this system. However, it is difficult to achieve a single, unified infrastructure when companies need to collaborate with each other, or when it providers expand their scope of business. You simply cannot guarantee that the other end of the pipeline you want to communicate with is all the basic structure you need: You may not know anything about the operating system, object model, or programming language it uses.

Web services, on the other hand, are loosely coupled to each other. Either side of the connection can change the execution mechanism without affecting the normal operation of the application. From a technical standpoint, people have shifted to using a message based asynchronous technology to achieve highly reliable system performance by using a unified connection through the use of XML, such as HTTP, Simple Mail Transfer Protocol (SMTP), and critical.

The messaging system packs the basic unit of communication into a self-describing packet (also known as a message) and puts it in a network cable. The essential difference between a messaging system and a distributed object system is that the sender is required to identify the basic structure of the receiver differently. In a distributed system, the sender needs to make a variety of guesses about the receiver's situation: how the application activates or splits, what interface is invoked, and so on.

On the other hand, the messaging system creates contracts at the cable format level. The sender does not need to consider the situation after the message is received, and do not need to consider the communication between the two parties, the only thing to consider is whether the receiver can identify the message content sent.

The advantages of creating contracts at the cable format level are self-evident. For example, the receiver can make changes at any time without interfering with the sender's message sending, as long as it can still identify the contents of the original message. In addition, the sender can communicate with the receiver without any special software: As long as it emits a message in the correct format, the receiver responds.


Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.