One of the best things about ASP.NET is the ability to easily separate code into different modules, unravelling presentation code from application logic. This allows developers with different skills sets to work on their area of speciality simultaneously (e.g. web designers working on HTML code while programmers work on ASP.NET code). Because of its object-orientated nature, ASP.NET also promotes code reuse.
In ASP.NET, there are several features that we can use to make our code reusable and independent of other code. These features are: user controls, server controls, HTML controls, custom controls, components, and the code behind method.
In this article, I will explain what each of these features are used for, and also show you how to use each one, by providing a number of simple yet detailed examples. To work with the examples in this article, you should have the .NET SDK installed on your Windows 98, NT, 2000, or XP machine. It can be downloaded free from MSDN