You are on page 1of 6

Main introduction: C Sharp

Programming/Foreword

Although C# is derived from the C


programming language, it has features such as
garbage collection that allow beginners to
become proficient in C# more quickly than in
C or C++. Similar to Java, it is object-
oriented, comes with an extensive class
library, and supports exception handling,
multiple types of polymorphism, and
separation of interfaces from
implementations. Those features, combined
with its powerful development tools, multi-
platform support, and generics, make C# a
good choice for many types of software
development projects: rapid application
development projects, projects implemented
by individuals or large or small teams,
Internet applications, and projects with
strict reliability requirements. Testing
frameworks such as NUnit make C# amenable
to test-driven development and thus a good
language for use with Extreme Programming
(XP). Its strong typing helps to prevent many
programming errors that are common in
weakly typed languages.
Foreword
A description of the C# language and
introduction to this Wikibook.
Getting started with C#
A simple C# program and where to get tools
to compile it.

Language Basics
Naming conventions
Quickly describes the generally accepted
naming conventions for C#.
Basic syntax
Describes the basics in how the applications
you write will be interpreted.
Variables
The entities used to store data of various
shapes.
Operators
Summarizes the operators, such as the '+' in
addition, available in C#.
Data structures
Enumerations, structs, and more.
Control statements
Loops, conditions, and more. How the program
flow is controlled.
Exceptions
Responding to errors that can occur.

Classes
Namespaces
Giving your code its own space to live in.
Classes
The blueprints of objects that describes how
they should work.
Objects
Cornerstones of any object-oriented
programming language, objects are the tools
you use to perform work.
Encapsulation and accessor levels
Explains protection of object states by
encapsulation.

The .NET Framework


.NET Framework Overview
An overview of the .NET class library used in
C#.
Console Programming
Input and Output using the console.
Windows Forms
GUI Programming with Windows Forms.

Advanced Object-Orientation Concepts


Inheritance
Re-using existing code to improve or
specialise the functionality of an object.
Interfaces
Define a template, in which to base sub-
classes from.
Delegates and Events
Be informed about when an event happens and
choose what method to call when it happens
with delegates.
Abstract classes
Build partially implemented classes.
Partial classes
Split a class over several files to allow
multiple users to develop, but also to stop
code generators interfering with source code.
Collections
Effectively manage (add, remove, find,
iterate, etc.) large sets of data.
Generics
Allow commonly used collections and classes
to appear to have specialisation for your
custom class.
Object Lifetime
Learn about the lifetime of objects, where
they are allocated and learn about garbage
collection.
Design Patterns
Learn commonly used design methodologies to
simplify and/or improve your development
framework.

Keywords
C# Keywords
abstract as base bool break
byte case catch char checked
class const continue decimal default
delegate do double else enum
event explicit extern false finally
fixed float for foreach
goto if implicit in int
interface internal is lock long
namespace newnull object operator
out override params private protected
public readonly ref return sbyte
sealed short sizeof stackalloc
static string struct switch this
throw true try typeof uint
ulong unchecked unsafe ushort using
virtual void volatile while

Special C# Identifiers
add alias get global partial
remove set value where yield

You might also like