In this book, you use Visual Studio 2005 (VS) for all of your C# development, from simple command-line applications to the more complex project types
The following is a quick list of some of the features of VS that make it an appealing choice for .NET development:
VS automates the steps required to compile source code but at the same time gives you complete control over any options used should you wish to override them.
The VS text editor is tailored to the languages VS supports (including C#) so that it can intelligently detect errors and suggest code where appropriate as you are typing.
VS includes designers for Windows Forms and Web Forms applications, allowing simple drag- and-drop design of UI elements.
Many of the types of project possible in C# may be created with "
VS includes several wizards that automate common
VS contains many powerful tools for visualizing and navigating through elements of your projects, whether they are C# source code files or other resources such as bitmap images or sound files.
As well as simply writing applications in VS, it is possible to create deployment projects, making it easy to supply code to
VS enables you to use advanced debugging techniques when developing projects, such as the ability to step through code one instruction at a time while keeping an eye on the state of your application.
There is much more than this, but hopefully you have the idea!
In addition to Visual Studio 2005, Microsoft also
Two of these products, Visual C# 2005 Express and Visual Web Developer 2005 Express, together allow you to create almost any C# application you'd care to mention. They both function as cut-down versions of VS and retain the same look and feel. While they offer many of the same features as VS, there are some notable feature absences, although not so many that they would prevent you from using them to work through this book.
When you use VS to develop applications, you do so by creating
. A solution, in VS terms, is more than just an application. Solutions contain
, which might be "Windows Forms projects," "Web Form projects," and so on. However, solutions can contain multiple projects, so that you can
This is very useful, because it allows you to work on shared code (which might be placed in the GAC) at the same time as applications that use this code. Debugging code is a lot easier when only one development environment is used, because you can step through instructions in multiple code modules.