This one-day “crash course” provides attendees
with a fast-paced, in-depth look at the C# programming language. It
describes the C# language and its use for object-oriented
programming. It covers basic concepts such as classes and
inheritance, as well as more advanced topics such as threads and
exceptions. As it is an investigation of much of the C# language in a
single day, this class has no programming laboratories.
This course is aimed at individuals who want a
quick-paced, intensive discussion of the basic features of the C#
Attendees must understand basic programming
concepts and mechanisms. Knowledge of C-style syntax and object-
oriented concepts is helpful but is not required.
C# and the .NET platform. A first C# program.
Some references to C# resources.
Classes and Objects:
The concepts of classes and objects. The syntax
and semantics for class definitions. Instantiating objects.
Constructors and initializers for initializing objects. Garbage
Specialization and Polymorphism:
Class specialization through subclassing.
Interface specialization through the definition and implementation of
interfaces. Classes versus interfaces. Inheritance, type promotion (or
“upcasting”), and polymorphism.
Miscellaneous Class Topics:
The Object class. Structures, arrays, and
strings. Comparing and copying objects. Overriding versus
overloading. Delegates and events.
A very brief tour of C#’s control flow statements
Namespaces and Assemblies:
Namespaces as a way of organizing classes.
Defining and accessing namespaces. A summary of some standard .NET
namespaces. Defining and accessing assemblies.
Defining, throwing, and catching exceptions.
Using exception information.
The concept of threads. A quick look at defining
threads and synchronizing access to shared objects.