ASP.NET is a set of web development technologies marketed by Microsoft. Programmers can use this set of technologies to build web applications and XML web services.
Principles of ASP.NET
Even though ASP.NET takes its name from Microsoft's old web development technology, ASP (Active Server Pages), the two differ widely. Microsoft has completely rebuilt ASP.NET, based on the CLR shared by all Microsoft .NET applications. Programmers can write ASP.NET code using any of the different programming languages supported by the .NET framework, usually Visual Basic.NET or C#.
ASP.NET attempts to simplify developers' transition from Windows application development to web development by allowing them to build pages composed of controls similar to a Windows user interface. A web control, such as a button or label, functions in very much the same way as its Windows counterpart: code can assign its properties and trigger its events. Controls know how to render themselves: whereas Windows controls draw themselves to the screen, web controls produce segments of HTML which form part of the resulting page sent to the end-user's browser.
ASP.NET encourages the programmer to develop applications using an event-driven GUI paradigm, rather than in the conventional web scripting fashion. The framework attempts to combine existing technologies such as Javascript with internal components like "Viewstate" to bring persistent (inter-request) state to the inherently stateless web environment.
ASP.NET uses the .NET Framework as an infrastructure. The .NET Framework offers a managed runtime environment (like Java), providing a virtual machine with JIT and a class library.
The numerous .NET controls, classes and tools can cut down on development time by providing a rich set of features for common programming tasks. Data access provides one example, and comes tightly coupled with ASP.NET. A developer can make a page to display a list of records in a database, for example, significantly more readily using ASP.NET than with ASP.
Advantages of ASP.NET over ASP
- Compiled code means applications run faster with more errors trapped at the development stage
- User-defined controls allow commonly used templates, such as menus
- Similar metaphors to Windows applications (e.g. controls) make transition between the two straightforward
- A rich set of controls and class libraries allows the rapid building of applications
Development tools
Several available software packages exist for developing ASP.NET applications:
Current version
Microsoft currently ships version 1.1, with ASP.NET 2.0 in beta, scheduled for release in Q2 2005. Microsoft will be releasing the latest version of Visual Studio (Visual Studio.NET 2005) at about the same time.