11.1. Overview

It's pretty common for programmers to lump bugs, program errors, and program exceptions into a single concept. Technically, each of these types of errors is different. Let's consider each in a little more detail.

11.1.1. Bugs

A bug is a specific type of error caused by the programmer. Bugs typically fall into one of three general categories: 1) syntax errors, 2) semantic errors, and 3) logic errors.

11.1.1.1. Syntax Errors

A syntax error occurs when a statement does not comply with the rules of the language. Just as English has specific rules, so do programming languages. A sentence in English, for example, is expected to have a noun and a verb. A programming statement is similar to a sentence, and if you don't obey the rules, syntax errors result. A program that has a syntax error cannot be compiled.

Visual Studio's Intellisense does an excellent job of detecting syntax errors the instant you enter a program statement. The dreaded squiggly line tells you the nature of the syntax error that you've made. If you place the cursor over the squiggly line, Visual Studio presents a message informing you of the probable cause of the error. When you first started writing programs, they probably had a ton of squiggly lines in them. However, as you've gained experience with C#, the frequency of your syntax errors likely has decreased. If you're like most programmers, you've moved on to bigger and better errors!

11.1.1.2. Semantic Errors

Semantic errors occur when you have ...

Get Beginning C# 3.0 now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.