C# Programming

Set of 8 CD-ROMs: $1,095

This course begins with an overview of C# and the .NET platform. In this course, you will learn the fundamentals of the C# language including how to set up the application development environment and how to write your first simple C# applications. You will learn about variables and constants, expressions and statements, operators and namespaces. Most important, you will learn how to create classes and instantiate objects.

Then, you will learn the three pillars of object oriented programming: Inheritance, Polymorphism and Encapsulation and see how these ideas are implemented in C# classes. You値l examine the difference between classes, structs and interfaces. Along the way you値l also learn about Arrays and the C# collection classes, as well as string manipulation and the use of regular expressions. This course also covers how to use Delegates and Events to build event-driven applications with C#. You will use these skills to build interactive Windows Applications with C#.

This course will provide a solid foundation for exploring the .NET framework as well as advanced topics in C#.

You will learn how to manipulate databases using ADO.NET. Additionally, you will learn how to use C# to develop ASP.NET applications. With this knowledge you値l be able to build interactive web sites (Web Forms) as well as Web Services, which have no User Interface but which provide information to other applications through Web protocols such as HTTP and SOAP.

Then, you will use C# to explore both intrinsic and custom attributes, and you will learn how to interact with attributes programmatically using Reflection. You値l explore threads and synchronization issues, and you値l use streams to read and write data both to your local machine and across the network and the Internet. Finally, you値l explore interoperability with legacy COM objects such as ActiveX controls and COM components.

 

Who should take this course? Programmers, Architects, and Development Managers responsible for creating enterprise applications using the Java Language.

SESSION 1

Introduction

  • C# and .NET
  • The .NET platform
  • The .NET Framework
  • The C# language

Hello World

  • Your first C# program
  • Methods
  • Comments
  • Console
  • Namespaces

C# Language Fundamentals

  • Types
  • Variables
  • Constants
  • Using statement
  • String
  • Identifiers
  • Statements
  • Expressions
  • Whitespace

Branching

  • Unconditional
  • If /else
  • Switch
  • Goto
  • While
  • Do..While
  • For

Operators

  • Relational
  • Assignment
  • Mathematical

Logical Operators

  • Logical
  • Short Circuit
  • Precedence
  • Preprocessor directives

SESSION 2

Classes and objects

  • Access modifiers
  • Class methods
  • Constructor
  • Variables
  • Instantiating objects
  • Static methods
  • Destructor & Finalize
  • Passing Parameters
  • Overloading methods
  • Properties

Inheritance

  • Specialization
  • Generalization
  • Inheritance
  • Polymorphism
  • Virtual functions
  • Overriding virtual function
  • The object class
  • Object as root
  • Boxing and unboxing

Operator Overloading

  • The operator keyword
  • Supporting other .Net languages
  • Operators must be static
  • Use with care
  • Conversion

SESSION 3

Interfaces

  • Defining structs
  • Defining interfaces
  • Implementing an interface

Extending and combining interfaces

  • Keywords is vs. as

Arrays

  • The array
  • Arrays and foreach
  • Initialization
  • Rectangular vs. Jagged
  • Params

Collections

  • Indexers
  • Collection Interfaces
  • IEnumerable

Advanced Collections

  • IEnumerator

SESSION 4

Advanced Collections (continued)

  • ArrayList
  • IComparable
  • IComparer

Collection Classes

  • Queues
  • Stacks
  • Dictionaries
  • Hashtables

strings

  • The string class
  • Immutable Strings
  • String Builder
  • Regular Expressions

Exceptions

  • Throwing exceptions
  • Catching exceptions
  • Exception objects
  • Custom exceptions

Delegates

  • What are delegates
  • Declaring delegates
  • Instantiating delegates

Multicast delegates

SESSION 5

Events

  • What are events
  • Events and delegates
  • Responding to events

Building Windows Applications

  • Windows forms by hand
  • Creating a windows form
  • Understanding Windows applications
  • Windows vs. Web applications
  • /XMLD documentation

ADO.NET

  • ADO.NET vs. ADO
  • Introduction to relational databases

SESSION 6

The ADO.NET object model

  • Using ADO Managed providers

ADO.NET advanced topics

  • Working with DataBound controls
  • Modeling data relationships

Updating databases using ADO.NET

  • Updating database records
  • Command builder

Advanced data updating Part I

  • Transactions
  • Connection Transactions
  • Advanced data updating Part II

SESSION 7

Advanced data updating Part I (continued)

  • Concurrency

Programming Web Forms

  • Understanding Web Forms
  • Creating a Web Form
  • Adding controls
  • Web form Life cycle
  • Event Driven Web forms

Web forms and data binding

  • Data binding
  • Web form life cycle

Attributes & Reflection

  • Intrinsic attributes
  • Custom attributes
  • Using reflection
  • Late binding
  • Discovery

Threads and synchronization

  • Creating threads

SESSION 8

Threads and synchronization (continued)

  • Synchronization devices
  • Race conditions

Streams

  • Reading and writing data

Advanced Streams

  • Asynch I/O
  • Web requests
  • Network I/O simple
  • Network I/O Asynch Serialization

COM Interop

  • Importing an ActiveX control
  • Importing a COM DLL