- 3.1. Introduction
- 3.2. A Simple C# App: Displaying a Line of Text
- 3.3. Creating a Simple App in Visual Studio
- 3.4. Modifying Your Simple C# App
- 3.5. Formatting Text with Console.Write and Console.WriteLine
- 3.6. Another C# App: Adding Integers
- 3.7. Arithmetic
- 3.8. Decision Making: Equality and Relational Operators
- 3.9. Wrap-Up
3.3. Creating a Simple App in Visual Studio
Now that we’ve presented our first console app (Fig. 3.1), we provide a step-by-step explanation of how to create, compile and execute it using Visual Studio 2012 Express for Windows Desktop, which we’ll refer to simply as Visual Studio from this point forward.
Creating the Console App
After opening Visual Studio, select FILE > New Project... to display the New Project dialog (Fig. 3.3). At the left side of the dialog, under Installed > Templates > Visual C# select the Windows category, then in the middle of the dialog select the Console Application template. In the dialog’s Name field, type Welcome1, then click OK to create the project. By default, the project’s folder will be placed in your account’s Documents folder under Visual Studio 2012\Projects. The IDE now contains the open console app, as shown in Fig. 3.4. The editor window already contains some code provided by the IDE. Some of this code is similar to that of Fig. 3.1. Some is not, and uses features that we have not yet discussed. The IDE inserts this extra code to help organize the app and to provide access to some common classes in the .NET Framework Class Library—at this point in the book, this code is neither required nor relevant to the discussion of this app; delete all of it.
Fig. 3.3 Creating a Console Application with the New Project dialog.
Fig. 3.4 IDE with an open console app.
The code coloring scheme used by the IDE is called syntax-color highlighting and helps you visually differentiate app elements. For example, keywords appear in blue and comments appear in green. We syntax-shade our code similarly—bold for keywords, gray for comments, bold gray for literals and constants, and black for other text. One example of a literal is the string passed to Console.WriteLine in line 10 of Fig. 3.1. You can customize the colors shown in the code editor by selecting Tools > Options.... This displays the Options dialog. Then expand the Environment node and select Fonts and Colors. Here you can change the colors for various code elements.
Configuring the Editor Window
Visual Studio provides many ways to personalize your coding experience. In the Before You Begin section that follows the Preface, we show how to configure the IDE to display line numbers at the left side of the editor window and how to specify indent sizes that match our code examples.
Changing the Name of the App File
For the apps we create in this book, we change the default name of the source-code file (i.e., Program.cs) to a more descriptive name. To rename the file, click Program.cs in the Solution Explorer window. This displays the app file’s properties in the Properties window (Fig. 3.5). Change the File Name property to Welcome1.cs and press Enter.
Fig. 3.5 Renaming the program file in the Properties window.
Writing Code and Using IntelliSense
In the editor (Fig. 3.4), replace the IDE-generated code with the code in Fig. 3.1. As you begin typing Console (line 10), an IntelliSense window is displayed (Fig. 3.6(a)). As you type, IntelliSense lists various items that start with or contain the letters you’ve typed so far. IntelliSense also displays a tool tip containing a description of the first matching item. You can either type the complete item name (e.g., Console), double click the item name in the member list or press the Tab key to complete the name. Once the complete name is provided, the IntelliSense window closes. While the IntelliSense window is displayed, pressing the Ctrl key makes the window transparent so you can see the code behind the window.
a) IntelliSense window displayed as you type
Fig. 3.6 IntelliSense.
b) IntelliSense window showing method names that start with Write
When you type the dot (.) after Console, the IntelliSense window reappears and shows only the members of class Console that can be used on the right of the dot (Fig. 3.6(b)). When you type the open parenthesis character, (, after Console.WriteLine, the Parameter Info window is displayed (Fig. 3.7). This window contains information about the method’s parameters. A class can define several methods that have the same name, as long as they have different numbers and/or types of parameters—a concept known as overloaded methods. These methods normally all perform similar tasks. The Parameter Info window indicates how many versions of the selected method are available and provides up and down arrows for scrolling through the different versions. For example, there are 19 versions of the WriteLine method—we use one of these in our app. The Parameter Info window is one of many features provided by the IDE to facilitate app development. In the next several chapters, you’ll learn more about the information displayed in these windows. The Parameter Info window is especially helpful when you want to see the different ways in which a method can be used. From the code in Fig. 3.1, we already know that we intend to display one string with WriteLine, so, because you know exactly which version of WriteLine you want to use, you can simply close the Parameter Info window by pressing the Esc key.
Fig. 3.7 Parameter Info window.
Saving the App
After you type the app’s code, select FILE > Save All to save the project.
Compiling and Running the App
You’re now ready to compile and execute your app. Depending on the project’s type, the compiler may compile the code into files with the .exe (executable) extension, the .dll (dynamically linked library) extension or one of several other extensions. Such files are called assemblies and are the packaging units for compiled C# code. These assemblies contain the Microsoft Intermediate Language (MSIL) code for the app.
To compile the app, select BUILD > Build Solution. If the app contains no syntax errors, this will create an executable file (named Welcome1.exe, in one of the project’s subdirectories). To execute it, type Ctrl + F5, which invokes the Main method (Fig. 3.1). If you attempt to run the app before building it, the IDE will build the app first, then run it only if there are no compilation errors. The statement in line 10 of Main displays Welcome to C# Programming!. Figure 3.8 shows the results of executing this app, displayed in a console (Command Prompt) window. Leave the app’s project open in Visual Studio; we’ll go back to it later in this section. [Note: The console window normally has a black background and white text. We reconfigured it to have a white background and black text for readability. If you’d like to do this, click the icon in the upper-left corner of the console window, then select Properties. You can change the colors in the Colors tab of the dialog that appears.]
Fig. 3.8 Executing the app shown in Fig. 3.1.
Syntax Errors, Error Messages and the Error List Window
Go back to the app in Visual Studio. As you type code, the IDE responds either by applying syntax-color highlighting or by generating a syntax error, which indicates a violation of Visual C#’s rules for creating correct apps. Syntax errors occur for various reasons, such as missing parentheses and misspelled keywords.
When a syntax error occurs, the IDE underlines the location of the error with a red squiggly line and provides a description of it in the Error List window (Fig. 3.9). If the Error List window is not visible in the IDE, select VIEW > Error List to display it. In Figure 3.9, we intentionally omitted the semicolon at the end of the statement in line 10. The error message indicates that the semicolon is missing. You can double click an error message in the Error List to jump to the error’s location in the code.
Fig. 3.9 Syntax error indicated by the IDE.