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  

411.  C# Essentials

Rev. 2.2

 

Microsoft .NET is an advance in programming technology that greatly simplifies application development, both for traditional, proprietary applications and for the emerging paradigm of Web-based services. .NET is a complete restructuring of Microsoft’s entire system infrastructure and represents a major learning challenge for programmers developing applications on Microsoft platforms.

 

This two-day course is designed for the experienced programmer to help you quickly come up to speed on the C# language. It is current to Visual Studio 2005 and .NET 2.0, which introduces important new features, such as generic types. The new features are covered throughout the course in the context of where they are applicable.

 

This course concisely covers the essentials of programming using Microsoft’s new C# programming language. It starts with a brief chapter, “.NET:  What You Need to Know,” which gets you up and running in the .NET environment with a minimum of fuss. The next two chapters cover C# language essentials and object-oriented programming in C#. The next chapter discusses how C# relates to the .NET Framework. The following chapter covers delegates and events. The course concludes with a succinct introduction to creating GUI programs using Windows Forms. An appendix provides a tutorial on Visual Studio 2005, including the freely downloadable Visual C# 2005 Express Edition.

 

The course is practical, with many example programs and a progressively developed case study. The goal is to quickly bring you up to speed in writing C# programs. The student will receive a comprehensive set of materials, including course notes and all the programming examples.

 

LEARNING OBJECTIVES

 

·         Acquire a working knowledge of C# programming

·         Learn about important interactions between C# and the .NET Framework

·         Learn how to implement simple GUI programs using Windows Forms

·         Gain a working knowledge of generic types, anonymous delegates, partial classes, and other new features in C# 2.0.

 

Duration:  2 days

 

Prerequisites:  The student should be an experienced application developer or architect. Some background in object-oriented programming would be helpful.

 

1.      NET: What You Need to Know

.NET Executables and the CLR

A .NET Testbed for C# Programming

Visual Studio 2005

 

2.      C# Overview for the Sophisticated Programmer

First C# Console Application

Namespaces

Data Types

Conversions

Control Structures

Subroutines and Functions

Parameter Passing

Strings

Arrays

Console I/O

Formatting

Exception Handling

 

3.      Object-Oriented Programming in C#

Classes

Access Control

Methods and Properties

Asymmetric Accessor Accessibility

Static Data and Methods

Inheritance

Overriding Methods

Abstract Classes

Sealed Classes

Access Control and Assemblies

 

4.      C# and the .NET Framework

Components

Interfaces

System.Object

.NET and COM

Collections

IEnumerable and IEnumerator

Copy Semantics in C#

Generic Types

Type-Safe Collections

Attributes

 

5.      Delegates and Events

Delegates

Anonymous Methods

Random Number Generation

Events

 

6.      Introduction to Windows Forms

Creating Windows Applications Using Visual Studio 2005

Partial Classes

Buttons, Labels and Textboxes

Handling Events

Listbox Controls

 

Appendix A.  Using Visual Studio 2005

 

Overview of Visual Studio 2005

Creating a Console Application

Project Configurations

Debugging

Multiple-Project Solutions

 

Appendix B.  Learning Resources

 

 

System Requirements

 

Course exercises require Microsoft Visual Studio 2005 on Windows XP with Service Pack 2. Visual C# 2005 Express Edition can also be used. See the appropriate course Setup Guide for details.

 

A good minimal hardware profile for this course would have a Pentium 1 GHz or equivalent CPU, 512 MB of RAM, and at least 4 GB of free disk space for tools installation and courseware.