Hands On Technology Transfer Computer Training
Hands-On Technology Transfer presents
 

Learning to Program with C# (Canada) On-Site Training

This on-site training class is also available as Public Schedule Seminar.

This hands on C# Programming course provides an introduction to programming using the C# language

Course Description/Agenda


This hands on C# Programming course provides an introduction to programming using the C# language. Students are introduced to the application development cycle, structure of programs, and specific language syntax. The course introduces important algorithmic constructs, string and character manipulation, dynamic memory allocation, standard I/O, and fundamental object-oriented programming concepts. The course explains the use of inheritance and polymorphism early on so the students can practice extensively in the hands on labs. Structured programming techniques and error handling are emphasized. The course includes the processing of command line arguments and environment variables so students will be able to write flexible, user-friendly programs.

Prerequisites

Familiarity with computers.

Fundamentals of the Program Development Cycle
  • Computer Architecture
  • The Notion of Algorithms
  • Source Code vs. Machine Code
  • Compile-Time vs. Run-Time
  • Software Program Architecture
    • Standalone
    • Client/Server
    • Distributed
    • Web-Enabled
  • IDE (Interactive Development Environment) Concepts
Application Development Fundamentals
  • Structure of a C# Program
  • Memory Concepts
  • Fundamental Data Type Declarations
  • Fundamental I/O Concepts
  • Fundamental Operators
    • Arithmetic Operators
    • Logical Operators
    • Precedence and Associativity
  • Building and Deploying a C# Program
Introduction to Classes and Objects
  • Classes, Objects and Methods
  • Object Instances
  • Declaring and Instantiating a C# Object
  • Declaring Methods
  • set and get Methods
  • Initiating Objects with Constructors
  • Value Types vs. Reference Types
Flow Control
  • Conditional Constructs
  • Looping Constructs
    • Counter-Controlled Repetition
    • Sentinel-Controlled Repetition
  • Nested Control Constructs
  • break and continue Statements
  • Structured Programming Best Practices
Writing Methods (Functions)
  • Static vs. Dynamic Allocation
  • Declaring Methods
  • Declaring Methods with Multiple Parameters
  • Method-Call Stack
  • Scope of Declarations
  • Argument Promotion and Casting
  • Designing Methods for Reusability
  • Method Overloading
Arrays
  • Purpose of Arrays
  • Declaring and Instantiating Arrays
  • Passing Arrays to Methods
  • Multidimensional Arrays
  • Variable-Length Argument Lists
  • Using Command-Line Arguments
  • Using Environment Variables
Deeper Into Classes and Objects
  • Controlling Access to Class Members
  • Referencing the Current Object Using this
  • Overloading Constructors
  • Default and No-Argument Constructors
  • Composition of Classes
  • Garbage Collection and Destructors
  • The finalize Method
  • Static Class Members
Defining Classes Using Inheritance
  • Superclasses and Subclasses
  • Advantages of Using Inheritance
  • protected Class Members
  • Constructors in Subclasses
Increasing Convenience by Using Polymorphism
  • Purpose of Polymorphic Behavior
  • The Concept of a Signature
  • Abstract Classes and Methods
  • Non-Inheritable Methods and Classes
  • Purpose of Interfaces
  • Using and Creating Interfaces
  • Common Interfaces of the .NET Framework
Files and Streams
  • Concept of a Stream
  • Class File
  • Sequential Access
  • Object Serialization to/from Sequential Access Files
  • Using LINQ to Query Information from a File
Exception Handling
  • Types of Exceptions
  • Exception Handling Overview
  • Exception Class Hierarchy
  • Extending Exception Classes
  • When to Throw or Assert Exceptions
Formatted Output
  • Conversion Characters
  • Specifying Field Width and Precision
  • Controlling Appearance with the IFormatProvider Interface
  • Printing Literals and Escape Sequences
  • Formatting Output with the String.Format Method
Strings, Characters and Regular Expressions
  • Fundamentals of Characters and Strings
  • String Class
  • String Operations
  • StringBuilder Class
  • Char Structure
  • Regular Expressions
    • Regular Expression Syntax
    • RegExp Class
    • Match Class
    • System.Text.RegularExpressions Namespace
Fundamental GUI Programming Concepts
  • Overview of Windows Forms
  • Displaying Text and Graphics in a Window
  • Implementing Event Handlers
  • Control Properties and Layout
  • Mouse Event Handling
  • Implementing Menus

 

More Seminar Information

Hands-On Technology Transfer
Hands On Technology Transfer Computer Training

Delivery Method

On-Site Training On-Site Training

Also Available As

Seminar Seminar

 
Add to favorites Add to favorites
Email Email this page
 

On-Site Training
Information Request Form

Please complete the form for more information and/or a quote for this on-site class.

Name:

Email

Phone:

City and State

Company:

Number of students:
(at least 10 for consideration)

When do you want to hold the
seminar?

How long would you like for the
seminar?

Additional comments to trainer:

We value your privacy!