Contact Us: 978.250.4983
Software Skills Training, Inc.

Learning to Program with C#

Attend face-to-face, remote-live or via on-demand training

Learning to Program with C#

Duration: 5 Days (Face-to-Face or Remote-Live), or 35 hours of coursework with personal facilitation over a four week span (On-Demand)

US Price: $2495 (Face-to-Face or Remote-Live), or $1495 (On-Demand)

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

Registration: Click here to view upcoming schedules and register for face-to-face sessions, click here to register for live remote attendance sessions, or click here to register for on-demand training with a start date that is convenient for you.

Schedule View the course schedule

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 course 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 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 and develop real competency.

This class is intended for those without previous programming experience.

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 Training

Course
ASP.NET Web Forms Programming Using C#
ASP.NET MVC Programming Using C# and .NET6
Windows Forms Programming Using C#
Windows Presentation Foundation Programming Using C#
WCF Programming Using C#

Training Locations

Choose a city below to view a schedule for in-person classes. Courses may also be taken via our Online Remote Attendance and On-Demand training options.