Learn how to choose the appropriate architecture in MS Visual Studio 2005.
Tags:.net framework 2.0,architecture,integrated development environment,microsoft visual studio,microsoft visual studio tutorial,microsoft windows,ms visual studio 2005,total training
Grab video code:
As a developer or architect, the first thing you need to do before writing a single line of code is to decide what type of system you are building. You have many different choices in Visual Studio 2005. In order to determine the architecture that is best for you, you will first need to understand what your options are. Let us take a moment to review the different options. Later on, we will write code and develop these types of applications in Visual Studio 2005. One option when choosing an architecture is the web based architecture. You would build a web based architecture when you would like a browser based application that reaches many users.
One major advantage to web application is that your code is centralized in one place. This makes maintenance and code updates much easier than a desktop application. With Visual Studio 2005, you would use ASP.net 2.0. ASP.net 2.0 uses the system.web name space in order to work with web forms. You would choose ASP.net when you would like a thin user interface with most of the logic on the server. You would also choose this one you want the browser to be the container for your application.
ASP.net is best suited for a connected environment. Most of the time, all the user need is a browser to work with your application, another architectural choice is a services oriented architecture. Visual studio uses web services for building services oriented architecture. Web services, levered ubiquitous technology such as XML and HTTP. In order to build web services that are standards complaint, be sure to use the add in to visual studio called web services enhancements or WSE for short.
Now keep in mind, there has been a lot of press about web services and be careful not to use them ubiquitously. One of the number one reasons for using web services is when you are working with the head or genius environment. A good indicator of when you should use a web service in a particular situation is when you encounter the word cross, cross platform, cross language, or cross firewall. When you encounter the word cross, it generally means that your data should be submitted in a standard space format such as XML. This is what web services do.
Be judicious when using web services are they are serialized. This means amble sending and receiving points, the data is streamed in and out of text based format. On each endpoint, this will take a little bit of time. If you know that your application do not require the serialization or if they do not require standard XML based format, then consider using binary transfer of your data and set.
Another architectural choice is the desktop application. Visual Studio 2005 uses Windows form 2.0 for these types of applications. Why would you want to use a desktop application? You would use this when you want to robust user interface or a performance user interface. This is because Windows form is able to catch data on the local machine. That way, you can avoid costly around trips on the network to retrieve data. This is especially important if your server is remote.
By leveraging the cashing and the power of the desktop, you can guarantee optimal performance of your desktop applications. A desktop application is best suited for intranets or internal corporate networks or anytime when you can actually control the user base. This is because you will need the .net framework to run your windows forms components.
Another choice is a device application. With Visual Studio, you would use the .Net compact framework 2.0 to work with device applications. The .Net compact framework 2.0 is used for PDA and telephones or any other type of Windows mobile application.
Windows mobile applications can run on all device that include the compact framework, this include pocket PC devices as well as cell phone that are running the Microsoft Smart Phone Platform. Another choice is the smart client application. This is actually a very popular choice these days and many companies are opting for this model. There is a variety of different technologies you can use to build a smart client application. These include Windows forms, the compact framework and Visual Studio tools for office.
A smart client application is basically a highbred of both the web application and a desktop application. It combines the best of both worlds so you get the distribution and the greatest reach that the web offers as well as harnessing the power of the desktop.
Another advantage of using a smart client application is the fact that it is self healing. Think of your instant messaging program, when update is ready, you will see a popup that says new updates are ready for your install. This is because the smart client, the IM program has a handshake with the server. It knows when updates are ready on the server. Once the updates are ready, it either notifies the user or silently installs these updates on the local machine. This is exactly how smart clients work.
The goal of Microsoft is one day to no longer had add remove programs in your control panel and no longer have any panes or messy, uninstalls or reinstalls. An important consideration when choosing a smart client architecture is like the desktop, you will need to have it done, that framework installed.