Visual Studio 2005 is the primary programming tool offered by Microsoft to casual or professional developers for working alone, or in teams, to build home, or mission-critical, multi-tier applications. Designed for the part-time or occasional developer, and the professional developer to develop and deploy client-server based Windows, Web, SmartPhone, and Pocket PC applications. The Visual Studio tools build upon the platform and infrastructure resources of Windows DNA (Distributed interNet Applications Architecture) to give developers what they need to build component-based enterprise systems and to provide a robust execution context for deploying and maintaining them.
This entire web site was developed, and is maintained using Visual Studio 2005. All web pages, flash files, images, scripts, and style sheets are grouped in the Visual Studio 2005 project. There are a lot of web development features of Visual Studio 2005 behind the scenes that have also been utilised to make this site more consistent and maintainable, including:
- Master Pages: Every page on this web site has certain common elements; the top and bottom and side of each web page is the same. This is done with Master Pages, like page templates. This way, if any change is required to the common elements it can me made in 1 place, on the master page. The individual web pages only contain the information unique to the individual web pages.
- Custom Components: Custom components/controls in ASP.NET are a useful way of distributing custom, repeatable functionality used within and across an organization. With ASP.NET custom controls, you can encapsulate custom user interface and other functionality in controls that can be reused on ASP.NET pages. In this site each of the ‘boxes’ shown on the pages is a custom control. This way they can be re-used on different pages as they are required. The blue side bar on every web page is also a custom control, thus allowing its functionality to be ‘detached’ from every web page and stored in one single place. If any change is required to this blue side bar it is made in one place, the custom control, which automatically changes on every web page using the custom control
- Web Services: A Web service is an interface that describes a collection of operations that are network-accessible through standardized XML messaging. A Web service performs a specific task or a set of tasks. A Web service is described using a standard, formal XML notation, called its service description, that provides all of the details necessary to interact with the service, including message formats (that detail the operations), transport protocols, and location. Web Services are used in this site quite extensively for any communicating back to the central servers. For example when share prices are shown a Web Service is called to provide the shares price. When a search for shares is performed, a web service is used to query the database for matches, and return the results to the web browser. When login is attempted a web service is called to validate the entered username and password, returning the name if the credentials are successfully authenticated, or an error if not.