411. C# Essentials
Rev. 2.0.1
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 recommended for
programmers using .NET 1.1, providing project files for Visual Studio .NET
2003. It also contains a chapter introducing new features of .NET 2.0, such as
generic types.
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
provides a succinct introduction to creating GUI programs using Windows Forms. The
course concludes with an overview of the new C# features provided by .NET 2.0,
including example programs to illustrate each important new feature. The course
includes two electronic supplements, provided as PDF files. The first covers
Visual Studio .NET 2003, and the second covers unsafe code and the C# pointer
type.
The course is practical, with many example programs. 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. The book Application Development Using C# and .NET
is recommended as a supplement.
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,
iterators, 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 .NET
2.
C# for the Sophisticated Programmer
First C# Console Application
Namespaces
Data Types
Control Structures
Subroutines and Functions
Console I/O
Exception Handling
3.
Object-Oriented Programming in C#
Classes
Access Control
Methods and Properties
Static Data and Methods
Inheritance
Overriding Methods
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#
Delegates
Random Number Generation
Events
5.
Introduction to Windows Forms
Creating Windows Applications Using Visual Studio .NET
Buttons, Labels and Textboxes
Handling Events
Listbox Controls
6.
New Features in C# 2.0
Generic Types
Iterators
Partial Classes
Nullable Types
Anonymous Methods
Covariant and Contravariant Delegates
Simplified Delegate Instantiation
Accessor Accessibility
Namespace Alias Qualifier
Static Classes
extern
Fixed Size Buffers
Friend Assemblies
Compiler Pragma
Appendix A. Learning
Resources
Electronic File Supplements
Supplement 1. Using Visual Studio .NET
Overview of Visual Studio .NET
Creating a Console Application
Project Configurations
Debugging
Supplement 2. Unsafe Code
and Pointers in C#
Unsafe Code
C# Pointer Type
System Requirements
Course exercises require Microsoft Visual Studio .NET 2003 on
Windows 2000 or XP. See the appropriate course Setup Guide for details.
A good minimal hardware profile for this course would have a Pentium
500-MHz or equivalent CPU, 256 MB of RAM, and at least 3 GB of free disk space
for tools installation and courseware.