The C# Language

The C# Language

The C# language is disarmingly simple, but C# is highly expressive when it comes to implementing modern programming concepts. C# includes all the support for structured, component-based, object-oriented programming that one expects of a modern language built on the shoulders of C++ and Java.

A small team led by two distinguished Microsoft engineers, Anders Hejlsberg and Scott Wiltamuth, developed the original C# language. Hejlsberg is also known for creating Turbo Pascal , a popular language for PC programming, and for leading the team that designed Borland Delphi , one of the first successful Integrated Development Environments for client/server programming.

The goal of C# is to provide a simple, safe, object-oriented, Internet-centric, high-performance language for .NET development. C# is simple because there are relatively few keywords. This makes it easy to learn and easy to adapt to your specific needs.

Keywords are special words reserved by the language that have a specific meaning within all C# programs. Keywords include if, while, and for. You'll learn about these keywords in the coming chapters.

C# is considered safe because the language is type-safe, an important mechanism to help you find bugs early in the development process. This makes for code that is easier to maintain and programs that are more reliable. C# 2005 was enhanced in many ways, one of which was to add support for generics (see Chapter 14), which makes collections type-safe as well, thus greatly improving the reliability of advanced applications.

C# was designed, from the very start, to support object-oriented programming. This book will explain not only how to write object-oriented programs, but also why object-oriented programming has become so popular. The short answer is this: programs are becoming increasingly complex, and object-oriented programming techniques help you manage that complexity.

C# was designed for .NET, and .NET was designed for developing web and web-aware programs. The Internet is a primary resource in most .NET applications.

 Python   SQL   Java   php   Perl 
 game development   web development   internet   *nix   graphics   hardware 
 telecommunications   C++ 
 Flash   Active Directory   Windows