Call us at 1-978-250-4299
Hands On Technology Transfer

Learning to Program with C#

Attend face-to-face, remote-live, on-demand or on site at your facility

On-Demand Training with Personal Facilitation
Top

Learning to Program with C#

Delivery Options: Attend face-to-face in the classroom, remote-live or via on-demand training.

Pricing

Face-to-face or remote-live: CDN$3,275

On-demand: CDN$1,975

Discounts: We offer multiple discount options. Click here for more informaiton.

Duration

Face-to-face or remote-live: 5 Days

On-demand: Approximately 35 hours of coursework with personal facilitation, to be completed in a four week span.

Registration

Face-to-face: Click here to view our schedules and register for in-person sessions.

Remote-live: Click here to register for live remote class sessions within a date range of your choosing.

On-demand: Click here to register for on-demand training with personal facilitation, on a start date of your choosing.

Students Will Learn

  • Using Visual Studio to create C# applications
  • Working with the .NET data types
  • Creating variables with the proper scope and using operators to build complex expressions
  • Using control structures such as if, while and for
  • Using procedures to build complex applications
  • Designing and using classes
  • Using arrays and .NET collections
  • Throwing and trapping exceptions using the C# try and catch statements
  • Using ADO.NET to access databases
  • Working with files and directories
  • Building simple Windows Forms applications
  • Building and using derived classes
  • Defining and implementing interfaces
  • Performing advanced string manipulation

Course Description

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 also contains "Thinking Like a Programmer" sections that provide students insight on how to develop common algorithms. The C# programming course for beginners covers console and file I/O, string and character manipulation, managing data using collections and fundamental object-oriented programming concepts. Error handling techniques are also emphasized. The C# programming course also introduces how to access databases using ADO.NET and illustrates how to build user interfaces using Windows Forms. Comprehensive hands on exercises are integrated throughout to reinforce learning C Sharp and develop real competency.

This class is intended for non-programmers. Students who already understand fundamental structured programming and object-oriented techniques should attend either Windows Forms Programming Using C#, ASP.NET Programming Using C# or Windows Presentation Foundation Programming Using C# instead of this more introductory course.

Course Prerequisites

Familiarity with computers.

Course Overview

Application Development Fundamentals
  • Overview of Programming Concepts
  • Understanding the Structure of a C# Program
  • Understanding Data Types
  • Working with Variables
  • Reading From and Writing to the Console
  • Overview of the .NET Framework
  • Using Visual Studio
  • Thinking Like a Programmer
    • Designing Algorithms
    • Finding Patterns in Code
Managing the Flow of an Application
  • Conditional Constructs
    • Working with if/else Constructs
    • Working with switch
  • Looping Constructs
    • Working with while Constructs
    • Working with for and foreach
  • Thinking Like a Programmer
    • Making Decisions
    • Designing Loops
Working with Data
  • Using Integer Data Types
  • Using Floating Point Data Types
  • Using Characters and Strings
  • Using Dates
  • Using Booleans
  • Working with Constants and Literals
Using Procedures to Modularize Code
  • Defining and Calling Subroutines
  • Defining and Calling Functions
  • Understanding Variable Scope
  • Overloading Procedures
  • Passing Parameters
  • Understanding by value vs by reference Parameters
  • Understanding the Call Stack
  • Thinking Like a Programmer
    • Finding the Procedures
    • Refactoring
    • Improving Productivity with Snippets
Object-Oriented Programming
  • Understanding Object-Oriented Concepts
  • Designing Classes
  • Coding Properties and Methods
  • Initializing Objects with Constructors
  • Overloading Constructors
  • Declaring and Instantiating Objects
  • Calling Properties and Methods
  • Understanding Value Types vs. Reference Types
  • Working with Shared Data Members and Methods
  • Thinking Like a Programmer
    • Finding your Classes
Understanding Namespaces
  • Understanding the Role of Namespaces
  • Understanding .NET Namespaces
  • Defining Custom Namespaces
  • Referencing Members in a Namespace
  • Using the using Statement
Working with Data Collections
  • Understanding Arrays
  • Declaring and Instantiating Arrays
  • Iterating through Arrays
  • Working with System.Array Methods
    • Copying, Sorting, Searching and Resizing
  • Passing Arrays to Methods
  • Working with param array Parameters
  • Working with Command-line Arguments
  • Understanding .NET Collections
  • Managing Data Using List
  • Managing Data Using Dictionary<TKey, TValue>
  • Working with LINQ
  • Making LINQ Queries
  • Enumerating LINQ Query Results
  • Working with Anonymous Types
  • Using Extension Methods with LINQ
Building Inheritance Hierarchies
  • Understanding Inheritance
  • Building Derived Classes
  • Understanding Constructors in Derived Classes
  • Defining and Using Protected Class Members
  • Understanding Polymorphism
  • Defining Overridable Methods
  • Overriding Methods
  • Understanding Abstract Classes
  • Defining Abstract Classes
  • Inheriting from Abstract Classes
Building GUIs with Windows Forms
  • Overview of Windows Forms
  • Designing Forms
  • Working with Controls
    • Using Labels and Textboxes
    • Using Buttons
    • Using Checkboxes and Radio Buttons
    • Using Menus
    • Using List Controls
  • Handling Events
Accessing Databases Using ADO.NET
  • Understanding the ADO.NET Object Model
  • Opening Connections
  • Executing Queries Using Commands
  • Iterating Through Results Using DataReaders
  • Calling Stored Procedures
  • Passing Parameters to Stored Procedures
  • Working with DataSets
  • Binding Data to Controls
Exception Handling
  • Understanding Exception Handling
  • Using try/catch to Handle Exceptions
  • Working with the Exception Class
  • Understanding Exception Propagation
  • Using finally to Manage Cleanup Processing
  • Throwing Exceptions
Working with Files, Directories and Streams
  • Using the System.IO Namespace
  • Discovering Drives
  • Working with Directories
  • Working with Files
  • Parsing a File Path
  • Understanding Streams
  • Working with FileStream
  • Reading and Writing Text Files
  • Understanding other Types of Streams
Working with Strings
  • Working with the String Class
  • Working with String Literals and Escape Sequences
  • Understanding String Manipulation Performance Issues
  • Working with the StringBuilder Class
  • Formatting Output with String.Format
Building N-Tier Applications
  • Building Large Scale Applications
  • Designing N-Tier Applications
  • Building .NET Assemblies
  • Referencing Assemblies

Related Courses

Testimonials

This class was very beneficial to me this week. This class gave me the foundation of C# programming which I was missing. The instructor was great and was very knowledgeable in the course details. He was able to translate the COBOL language to the C# language which helped me greatly to understand C#.
— C.W., LexisNexis


Excellent instructor. I learned so much! What a great experience! This was such valuable training. Thank you to the instructor and HOTT for providing this service. I will tell everyone who's interested to consider your company. Great job!
— O.W., AAA NCNU Insurance Exchange


Hands down the best class and learning experience I have ever had.
— J.I., National Oilwell Varco

Course Schedule

Choose a city below to view a schedule of courses. Attend regularly scheduled classes across Canada, or attend via our Remote-Live and On-Demand training options.