DOTNET 3.0 Valentine's day rose

Source: Internet
Author: User
Tags msmq

Today's Valentine's day, think about nothing to give to your girlfriend. I chatted with her in the afternoon and saw that she was still interested in DOTNET 3.0 and Windows Vista. So today I want to write an introduction to DOTNET 3.0.ArticleShow it to his girlfriend as a Valentine's Day gift. I hope she will be happy... she is too far apart. I feel quite embarrassed to send her roses without my own hands. Hope to compensate...

I. Differences and advances in DOTNET 3.0 and 2.0

Speaking of DOTNET 3.0, of course, we should first mention her brother DOTNET 2.0, and talk about her different from her brother and her progress above her brother.

The. NET 3.0 and 2.0. Net frameworks have some differences. Previously, we focused on allowing different languages to communicate with the same class library CLR. CLR, from.. NET 1.0. NET 2.0 is enhanced. It works based on a relatively simple concept: the runtime model of a common language can execute any operation.. NET FrameworkCode. This means that every developer no longer needs to constantly learn different technical languages. For example, a Windows form applicationProgramC # developers can use this form building knowledge to compile web pages. Similarly, a visual basic. Net developer can smoothly switch between writing a mobile application and writing a web service. The CLR acts as an "arbitration" and implements corresponding communication.

Although DOTNET 3.0 has little improvement in general language runtime, this version adds technical attraction and many technical features, such as the introduction of LINQ, WPF/e, these exciting technologies. The following is a framework of DOTNET 3.0:

Ii. New technologies introduced by DOTNET 3.0

    • Windows Presentation Foundation (uniform method for different user interfaces)
    • Windows cardspace (Consistent digital user control)
    • Windows Communication Foundation (supporting service-oriented applications)
    • Windows Workflow Foundation (supports workflow-based applications)
Iii. Windows Workflow Foundation

Workflow is a simple idea: a series of steps executed in a specific order. You can even think that each application is executing a workflow, because each application executes some processes. However, when C #, Visual Basic, or otherProgramming LanguageIn applications developed using traditional methods, these processes are hidden in the code. This is fine, but these processes are deeply embedded into the program logic, making it increasingly difficult to execute or change them.

Using workflow technology to execute the process logic can effectively solve this problem. After the workflow technology is adopted, the logic and common code will not be entangled. each step in the process will be clearly defined and then executed by the workflow engine. The result is that the process is clearly implemented.

Workflow engines are not a new concept, and some have been applied in windows and other systems. Microsoft has embedded the workflow engine in some products. However, as workflows become the mainstream method for developing applications, it is imperative to provide a single workflow technology for Windows. This is exactly the original design intention of Windows Workflow Foundation (WF. Since it provides a general workflow technology for Windows, WF has become the basis for unified creation of All workflow applications. Microsoft's Microsoft Office 2007 system, Windows SharePoint Services, and many other company applications also use WF.

However, it is difficult to provide general workflow technologies. For example, how can we use one method to meet various requirements of different workflow applications? WF provides a global view of the workflow. A wf workflow is only a group of activities executed by the WF engine. An activity is a class that can contain any work that the workflow creator deems necessary. Activities can be reused in different workflows. Therefore, it is easier to create an automated solution for new problems.

Another difficulty facing the provision of general workflow technology is the traditional divergence between personnel-oriented workflows and system-oriented workflows. Generally, the workflow application used by the staff requires high flexibility and can be changed in real time. Generally, workflow applications used by systems, that is, software, are relatively more static, but they must be as efficient as possible. WF considers these two different usage situations, including not only personnel-oriented functions (such as changing the functions of running workflows), but also more system-oriented operations.

Using Windows universal workflow technology of WF,. NET Framework 3.0 provides a very useful software development mode for developers. As process-oriented software continues to become popular, workflow technology will also be promoted.

Iv. Windows Communication Foundation

Most applications need to communicate with other applications, whether developed through workflows or other methods. In recent years, the communication technology between applications has developed rapidly. After decades of inconsistency, major suppliers finally reached an agreed application communication protocol. Based on soap, a global web service protocol, the interoperability between applications developed based on J2EE,. NET Framework, and other technical platforms is much simpler than before. It also makes the idea of a service-oriented architecture accepted by more organizations.

Of course, there are already many communication methods. Take. NET Framework 2.0 as an example. You can select the following communication methods:

    • ASP. NET web service, providing soap-based interactive communication.
    • . Net remoting is mainly used for communication between. NET applications.
    • Enterprise Services, Supporting Scalable transactional applications.
    • System. messaging: supports message queues through Microsoft Message Queuing (MSMQ.
    • Web Services enhancements (WSE) is an extension of ASP. NET web services and supports new specifications such as WS-Security.

These technologies have their own values and have their respective positions in practical applications. However, since the problem is the same, why should we adopt several different solutions? Why not establish a single application communication basis based on interactive services?

This is exactly the original design intention of Windows Communication Foundation (WCF. With WCF, developers no longer need to use different application programming interface technologies to process each type of communication, just as before-WCF (originally named "Indigo ") provides common methods using common APIs. In the. NET Framework 3.0 environment, most applications that use one of the above technologies will use WCF instead.

WCF provides powerful interactive communication support through soap, which is the basic element of modern computer devices. It also supports multiple WS-* specifications, such as WS-Security, WS-reliablemessaging, and WS-atomictransaction. WCF does not require soap, but may use other methods, including optimizing the binary protocol, MSMQ queue messages, and simple rest-based communication. WCF uses a clear service-oriented method for communication. Instead of transparent communication between objects, WCF provides a slightly different abstract service for communication parties. One of the results is to release some Close Coupling Relationships between distributed object systems, reducing interaction errors and making them easier to modify.

Application Communication is a basic function of modern software .. Net Framework 3.0 solves this problem with its WCF Service-oriented method.

V. Windows cardspace

Think about how people express their identities on the Internet. In most cases, the personal digital identity is used as a simple user name. With the password added, you can use this identity to access email accounts, online stores, online banking, and other financial institutions. Although this method is simple and widely used now, the user name and password methods cannot be avoided. The two most important items are:

Remember the different user names and passwords used to log on to many websites. To reduce these troubles, many people use the same username and password on different websites, which increases security risks.

Usernames, passwords, and other personal information may be stolen by counterfeits. Web counterfeits send fraudulent emails to trick victims into logging on to a fake website, such as a counterfeit website that is extremely similar to the victim's bank. This website is actually controlled by counterfeits. Once a victim enters his/her username and password, the counterfeited person on the webpage uses the information to impersonate the user on a real website and seek improper benefits.

To reduce the dangers of these problems, we need to adopt a new method to manage digital identities. Windows cardspace (originally named "infocard") is an important part of this new method. To help people track their digital identifiers, cardspace uses different information cards to represent each digital identifier. If the website accepts cardspace logon, The cardspace selection screen is displayed when you try to log on to the website. You can select a card, which is equivalent to the digital ID used to log on to the website. You don't have to bother remembering countless user names and passwords. You just need to remember the information card they want to use. Different information cards also contain other information, which allows you to control the information submitted when logging on to the website.

These identifiers are created by one or more identifiers. Organizations can have their own identity providers without relying on simple user names and passwords. Each identity Provider uses a more powerful encryption mechanism for users to verify their identity. Cardspace itself also contains a self-issued identity Provider that can run on the client computer. With this provider, you can create your own identity without relying on the password for authentication. The website accepts these self-issued cardspace identifiers, so that you do not have to rely on common password methods, which will naturally reduce many problems caused by passwords.

If you do not need a password to log on to the website, you can steal the website without a password! However, if the counterfeits of web pages successfully trick victims into accessing fake websites, they will still steal other user information, such as sensitive medical information. To prevent this situation, users are required to distinguish between fake websites and real websites. To help users identify websites, organizations with websites should obtain "high-validation certification ". Different from the current simple SSL authentication, the new authentication method involves more and more strict processes, including more rigorous methods to prove the identity of the organization applying for the authentication. The high-validation certification can also contain a company logo and other information to help users accurately identify whether the website using the certificate is legal. When a user accesses a new website, cardspace always displays the certificate information of the website on a standard screen. Based on the degree of acceptance of the certification, the screen will automatically show the degree of confirmation of the Website Logo. The purpose is to force users to clearly define whether the website is trusted and then help them make the right choices.

Windows cardspace is actually part of a larger metadata system. The metadata system is fully based on open public protocols. It defines a brand new way to enable different digital identification technologies on different platforms (including operating systems other than Windows) and applications (including web browsers other than Internet Explorer. Cardspace uses a common method to select the identity and other Windows information. Therefore, it plays an important role in the metadata system. Besides, cardspace has become an important part of. NET Framework 3.0 because it solves the basic identification problem.

6. Windows Presentation Foundation

User interfaces are an important part of almost all applications. Now, users have higher and higher requirements on these interfaces. Of course, we still need the traditional menu-driven GUI. However, many applications also need to be able to play videos, run animations, use 2D or 3D graphics, and call different documents. The above functions must be available to access applications through installed desktop clients or web browsers.

These user interface functions on windows have been provided in different ways. For example, developers can use.. NET Framework to create a Windows GUI, use HTML, Java applets or JavaScript code to create a web browser interface, or use software such as Windows Media Player and Adobe Flash Player to play videos, the document format is defined by Microsoft Word, Adobe PDF, or other software. Obviously, developers are facing a huge challenge: how to use different technologies to create consistent user interfaces for different clients. This is quite difficult.

Windows Presentation Foundation (WPF), originally codenamed "aveon", was designed to solve this problem. WPF provides a consistent technical basis for all these user interfaces, greatly simplifying the work of developers. WPF uses a more modern method that supports video, animation, 2D or 3D graphics, and various types of documents, allowing users to process information in a new way. In addition, WPF also provides a general foundation for desktop clients and browser clients, greatly simplifying the application development work of the two.

In the past, developers needed to understand various technologies before they could work. Now, with this more consistent method, developers can easily create user interfaces in similar examples.

Another problem that has long plagued User Interface developers is how to create different roles required for an efficient interface. Software developers need to write the corresponding interface logic, but they are not the best candidates for defining the interface perception. Generally, designers and experts in the human-computer interaction field are more suitable for this job. However, in the context of previous technologies (such as Windows Forms), these problems are entirely determined by developers. There is no effective collaboration between developers and designers. WPF solves this problem with the help of Extensible Application Markup Language (XAML. XAML is an XML-based language that allows you to specify the user interface in a declarative manner-rather than code. In this way, the development tool can easily generate and use interface specifications based on the visual display created by the designer. In fact, expression interactive designer, a new Microsoft product, is designed for this purpose. With this tool (other provided by third parties), designers can create an interface appearance and then generate the xaml definition of the interface they created. After you import these definitions to Visual Studio, you can start to build the logic required by the interface.

After a developer creates an installed WPF application that runs on Windows, all the functions provided by WPF can be used. However, to create a client program that runs inside a Web browser, developers should create a XAML browser application, which is usually called xbap. Similar to the basic principle of the installed WPF application, xbap allows you to display the same style as the user interface in a downloadable browser application. The two applications can use the same code, which means that developers no longer need different technical sets for desktop and browser clients. In particular, running the xbap downloaded from the internet in the Security Sandbox will restrict the functions of the application according to the current situation of such rich Internet applications. However, a large subset of user interface functions provided by the installed WPF application can also be used for xbap.

Both the WPF installation application and xbap can utilize modern graphics support from WPF, including hardware acceleration, vector graphics, and more. By providing more powerful graphical support, WPF makes a series of data visualization options possible, which is impossible by using Windows forms or other early technologies. WPF also provides the basis for XML paper specification (XPS) to define standard formats for viewing, distributing, and printing fixed-Format documents.

User Interface is a complex and important part of modern applications. Using WPF and. NET Framework 3.0, a complete and consistent solution is provided to cope with user interface problems. The goal is to enable relevant personnel (including developers and designers) who build user interfaces to work more effectively.

VII. Summary

Write so much, catch a cold, a headache. Take a rest. At the same time, I hope my wife can get better and better.

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.