.NET Framework 3.0 (WinFX)

At the end of May 2006, Microsoft unveiled the beta version of Windows Vista with a number of models and tools for developing Windows applications such as .NET Framework 3.0 (formerly known as WinFX), Office 2007 ... In There are tools related to .NET Framework 3.0

At the end of May 2006, Microsoft unveiled the beta version of Windows Vista with a number of models and tools for developing Windows applications such as .NET Framework 3.0 (formerly known as WinFX), Office 2007 . In The .NET Framework 3.0 related tools are of particular interest to software developers. As planned, the official version of the .NET Framework 3.0 will be announced in November 2006. This article desires to give you a basic look at the .NET Framework 3.0 announced by Microsoft as the 3rd generation after Win16 and Win32.

Current programming model on Windows

Before studying the .NET Framework 3.0, let's review the current Windows software development model. There are two types of applications: desktop application (WinForm) and web application (WebForm). When developing a software, we have to choose one of these two types of applications that cannot be shared or shared. With desktop applications according to the client-server model, the components of the program are installed on the server (server) and client (client). When there is any change in the client side, we must reinstall that component for each client. As for web applications, just install on the server side, the client will access through the URL, however, the browser is the only tool that we can use to access the web application, it is inconvenient!

The question is, is there any way to write an application that can run as a desktop application, as well as a web application? This problem has been posed for a long time but until recently Microsoft has implemented a new programming model - the .NET Framework 3.0 - to help solve the problem. With this model, we can write a web application that allows the client on the client side to use without the browser or a desktop application used by web users.

.NET Framework 3.0 programming model

.NET Framework 3.0 is a programming model with "managed code," built and extended based on the .NET Framework 2.0, which not only solves the problem of software development problems. but also helps create software and services that current technology cannot do. It helps programmers and designers can create applications with more features that are more reliable, more secure, smarter, and aesthetically easier to deploy .
We can look at the .NET Framework 3.0 in two ways:

In terms of functions , the .NET Framework 3.0 has 3 function blocks: Presentation; Data (Data); Communication (Communication).

Technically , Microsoft now introduces 4 new and most prominent techniques: Windows CardSpace (InfoCard), Windows Presentation Foundation (Avalon), Windows Communication Foundation (Indigo), Windows Workflow Foundation (Workflow).

Microsoft decided to use the .NET Framework 3.0 for Windows Vista but also supported Windows XP (SP2) and Windows Server 2003 (SP1). Here we will learn each function in turn.

.NET Framework 3.0 (WinFX) Picture 1.NET Framework 3.0 (WinFX) Picture 1

Windows CardSpace (InfoCard)

InfoCard is a new technology in the .NET Framework 3.0, which makes it easy and safe to use and share personal information on the Internet. InfoCard helps web users no longer have to worry about remembering too many "username" (username) and "password" (passwords) when accessing the web. In addition, InfoCard also allows creating secure user account management web applications.

Imagine you sign up for an account in Yahoo, one of Google and a member of three forums. Each place you have to have a username and password, so you have to remember 5 usernames and 5 passwords. Not to mention that you have to remember the name and password using a computer, use some software on your computer. What a headache?

Or do you want to register as a member of a web service to exploit data from this website. Often you will have to fill out some personal information on the registration form website. Now you do not need to do that, just give a code (you can use this code at any site that requires), then the site automatically links to another website posting information yours. If valid, you can be a member right away without typing a password or reporting any more information, it is InfoCard.

Thus, the InfoCard helps you have a code that looks like an online identity card. Wherever you go on the internet, keep saying: my "ID"!

Windows Presentation Foundation (Avalon)

Avalon can be seen as a unified demonstration system used to design the user interface in the .NET Framework 3.0. The system consists of two parts, one is the interface for expressing the interface, the other is the set of tools that help software developers create the best graphic and multimedia applications.

In .NET, we already have a great user interface environment, WinForm for desktop applications and WebForms for web applications, so why is there another user interface environment to do?

Today, most of us have noticed that the look and interface of desktop applications is more outdated than web applications. Desktop applications must always use standard tools. In order for these controls to be more vivid, programmers have to spend a lot of effort redesigning them.

From Win16, Win32 has GDI graphics library, then GDI +. If you want to work with graphics better, programmers can use DirectX. Whereas with Avalon, we will have a great generation of graphics programming including GDI and support 3D graphics, animation, video, audio processing and recognition .

In the current programming model, the programmer is usually the interface designer, but for Avalon, the interface designer can create an independent interface while the programmer only needs to write the code below. .

Windows Communication Foundation (Indigo)

Indigo is one of three parts of the .NET Framework 3.0, which covers all of the distributed programming techniques and is therefore highly expected from software developers.

Up to now, there are many techniques for distributed systems such as ASP.NET Web Services (ASMX), Web Service Enhancements (WSE), Microsoft Message Queue (MSMQ), Enterpise Services / COM + and .Net Remoting. In particular, each technique has its own advantages and disadvantages. Each type will fit a certain distributed application. However, when deploying a distributed application, software developers cannot choose many techniques. The introduction of Indigo, which encapsulates most of the functions of each of these techniques, makes distributed application development more convenient.

Windows Workflow Foundation (WWF)

WWF helps software developers can quickly deploy applications on Windows. It effectively supports the design of step-by-step workflow applications, according to certain flows. WWF not only simulates stream processing in computer systems but also simulates workflows in real life.

Take the example of a supermarket sales. A customer calls the order department, the staff notes some necessary information. Next, this information is passed through the order processing department and transferred to the export and delivery department if stock is available. Delivery when delivery is completed will receive feedback from customers and end the purchase process.

How do we write a program to handle this sales process? We need at least one window for employees to enter customer information and a window for order processing and delivery. In these two windows, we have to help users manage in a certain order. The program is not difficult to implement on current programming models. However, with WWF, work will become easier and much faster.

WWF offers 3 main features :

Stream processing techniques : this is the basic technology of Windows, currently there are a number of Microsoft products that support thread processing such as Microsoft BizTalk Server, Microsoft Exchange Server. According to the development trend, supporting workflow processing is always part of Windows.

Processing model for many different types of applications : Supporting workflow processing is not limited to simple tasks that support processing complex streams. Moreover, we can divide an overall model into sub-models for processing.

A unified system with actual workflow processing model : Take the example of the above sales job, all the situations that occur during the pre-defined transaction process and what the computer will do. installed. In the meantime, actual transactions always change according to circumstances (for example, customers change orders, add some constraints .) that computer processing flow cannot be performed. . WWF will help us develop software where workflows can be intervened like in real life.

Conclude

According to experts, the .NET Framework 3.0 will significantly change software development in the near future. This article only covers a general way about the .NET Framework 3.0. Going deeper into each of the above four components is expected to be presented on another occasion.

.NET Framework 3.0 (WinFX) Picture 2.NET Framework 3.0 (WinFX) Picture 2

Reference :
• http://msdn.microsoft.com/winfx/learning/netfx3faq/default.aspx
• http://commnet.microsoftpdc.com/content/downloads.aspx
• http://www.microsoft.com/betaexperience/vivn/newsletter.aspx
• http://msdn.microsoft.com/winfx/reference/   

Huu Giang
FCGV Company

4 ★ | 2 Vote