Course Catalog
Curriculum Guides
  .NET
  Java/J2EE
  XML
Downloads
Buy Courseware
Customization
News
Authors
Technical Library
FAQ
About Object Innovations
Opportunities
Contact Us
Home

 

 

   
www.objectinnovations.com
info@objectinnovations.com
877-558-7246 (toll free)  
781-466-8012  

408.  Object-Oriented Programming Essentials with C# and .NET

Rev. 1.0

 

This course introduces the essential skills necessary for developing object-oriented programs on the Microsoft .NET platform. Understanding object-oriented programming (OOP) is essential for working with Microsoft .NET.  As new as the Microsoft .NET platform is, experience has already shown that programmers who do not understand OOP have a significantly more difficult time in understanding and starting to work with .NET, even if they have a significant development background.

 

By the end of course, not only will programmers be able to start thinking in OOP terms, they will know how to build and debug C# programs using the .NET class libraries and Visual Studio .NET.  A great deal of time will be spent with student labs and hands-on demonstrations.

 

The course discusses the traditional object-oriented features of C# such as classes, encapsulation, composition, inheritance, and polymorphism as well as other features such as exceptions, properties, delegates, events, and interfaces. Programming to interfaces is a very important concept in modern OOP thinking and is fundamental to the .NET type system. Several fundamental interfaces and classes of the .NET Framework Class Library will be introduced. In addition, we will show how you can implement design patterns using C# and the class library. Design patterns are a product of modern thinking on object-oriented design and programming that emphasizes programming to interfaces, and using object composition over class inheritance. The course includes a succinct introduction to creating GUI programs using Windows Forms. A final chapter provides an overview of .NET, using the perspective gained from studying C# and object-oriented programming.

 

LEARNING OBJECTIVES

 

·         Gain a basic understanding of the object-oriented programming paradigm

·         Acquire a working knowledge of C#

·         Learn how to implement programs using C# and classes from the .NET Framework

·         Learn how to implement simple GUI programs using Windows Forms

·         Gain an orientation to the .NET Framework

 

Course Duration:  3 or 4 days.

 

Prerequisites:  The student should be an experienced software developer or architect.

 


1.      Elementary C#

Hello, World

Using Visual Studio .NET

Namespaces

Input and Output

Operators

Control Structures

 

2.      More Elementary C#

Conversions

Operators

Expressions

Checked Code

Output Formatting

Parameter Passing

 

3.      Debugging

Debug Mode

Breakpoints

Watch Windows

Single-Stepping

Call Stack

 

4.      Classes and Object-Oriented Programming

Decomposition

Classes and Objects

Public and Private

Constructors

this

Encapsulation

References

Static Fields And Methods

Constant and Readonly

 

5.      Inheritance

Specialization

Single Inheritance in C#

Object Root Class

Access Control

Using Base Class Member

Method Hiding

Type Conversion


6.      Virtual Methods and Polymorphism

Polymorphism

Heterogeneous Collections

Abstract and Sealed Classes

Method Overriding

Abstract Methods

 

7.      The C# Type System

Value Types

Reference Types

Simple Value Types

Structures

Enumeration Types

Arrays

Interfaces

Delegates

Events

Boxing and Unboxing

 

8.      Properties and Indexers

Property Syntax

Using Properties

Indexers

 

9.      Exceptions

Exception Fundamentals

.NET Exception Handling

Exception Flow of Control

Stack Unwinding

System.Exception

User-Defined Exception Classes

Finally

Inner Exceptions

 

10.  Characters and Strings

Characters

Strings

String Input

String Methods

StringBuilder Class

Programming with Strings

 


11.  .NET Framework

Collections

Copy Semantics and ICloneable

Comparing Objects

Using Interfaces

Design Patterns

Iterator Pattern

Factory Pattern

 

12.  Introduction to Windows Forms

Creating Windows Applications Using Visual Studio .NET

Handling Events

 

13.  What Is Microsoft .NET?

Why Microsoft .NET

.NET Programming Model

Common Type System

Common Language Runtime

Assemblies

Metadata

Serialization Example

.NET Framework Class Library

 

System Requirements

 

Course exercises require Microsoft .NET and Microsoft Visual Studio .NET on Windows 2000.

 

A good minimal hardware profile for this course would have a Pentium 500-MHz or equivalent CPU, 256 MB of RAM, and at least 500 MB of free disk space for tools installation and courseware.