Course Outline
Day 1
Introduction
What is C#
What is .NET
What is Object-Oriented Technology
Objects and Classes
Hello World
Exercise
Classes and Objects
Value Types
Reference Variables
Instance Fields
Properties
Creating Objects
Garbage Collection
Member Visibility
Constructors
Namespaces
Exercise
Test Driven Development
NUnit
Basics
Primitive Types
Literal Constants
Operators
if/else
switch
Parameter Passing
Method Overloading
Call by Value
Exercise
Statics
Formatting Output
ArrayList
Loops
XML Doc Comments
Exercise
Collections
Day 2
Inheritance
base and derived classes
hiding base class methods
overriding methods
order of construction
Polymorphism
Abstract Classes
Sealed Methods and Classes
Exercise
Abstract Test Case
Interfaces
More on ArrayLists
Access Modifiers
Day 3
Operator Overloading
Equality
Casting
Type Conversions
Exercise
Exceptions
try/catch
Throwing Exceptions
finally
Testing for Exceptions
Exercise
Collections
Arrays
Indexers
Exercise
HashTables
Enumerations
Exercise
Day 4
Boxing
Call by Reference
ref and out parameters
Casting
as operator
Exercise
Delegates
Events
Exercise
IO Streams
System.IO Structure
Testing classes that do IO
Exercise
Serialization
Exercise
Threads
Starting threads
Joining threads
Killing threads
Synchronization
Locks and Monitors
Exercise
Day 5
Misc. Topics
C Heritage
Structs
Preprocessor
unsafe code
Attributes
Reflection
Regular Expressions