55337 Introduction to Programming

In this 5-day course, students will learn the basics of computer programming through the use of Microsoft Visual Studio 2022 and the Visual C# and Visual Basic programming languages. The course assumes no prior programming experience and introduces the concepts needed to progress to the intermediate courses on programming, Programming in C#.

The focus will be on core programming concepts such as computer storage, data types, decision structures, and repetition by using loops. The course also covers an introduction to object-oriented programming covering classes, encapsulation, inheritance, and polymorphism. Coverage is also included around exception handling, application security, performance, and memory management.


Who Should Attend
This course is intended for anyone who is new to software development and wants, or needs, to gain an understanding of programming fundamentals and object-oriented programming concepts. They will typically be high school students, post-secondary school students, or career changers, with no prior programming experience. They might want to gain an understanding of the core programming fundamentals before moving on to more advanced courses such as Programming in C#.

Course Objectives
– Explain core programming fundamentals such as computer storage and processing
– Explain computer number systems such as binary
– Create and use variables and constants in programs
– Explain how to create and use functions in a program
– Create and use decisions structures in a computer program
– Create and use repetition (loops) in a computer program
– Explain pseudocode and its role in programming
– Explain the basic computer data structures such as arrays, lists, stacks, and queues
– Implement object-oriented programming concepts
– Create and use classes in a computer program
– Implement encapsulation, inheritance, and polymorphism
– Describe the base class library (BCL) in the .NET Framework
– Explain the application security concepts
– Implement simple I/O in a computer program
– Identify application errors and explain how to debug an application and handle errors
– Identify the performance considerations for applications


  • 1 - Introduction to Core Programming Concepts

    • Computer Data Storage and Processing
    • Application Types
    • Application LifeCycle
    • Code Compilation
  • 2 - Core Programming Language Concepts

    • Syntax
    • Data Types
    • Variables and Constants
  • 3 - Program Flow

    • Introduction to Structured Programming Concepts
    • Introduction to Branching
    • Using Functions
    • Using Decision Structures
    • Introducing Repetition
  • 4 - Algorithms and Data Structures

    • Understand How to Write Pseudocode
    • Algorithm Examples
    • Introduction to Data Structures
  • 5 - Error Handling and Debugging

    • Introduction to Program Errors
    • Introduction to Structured Error Handling
    • Introduction to Debugging
  • 6 - Introduction to Object-Oriented Programming

    • Introduction to Complex Structures
    • Introduction to Structs
    • Introduction to Classes
    • Introducing Encapsulation
  • 7 - More Object-Oriented Programming

    • Introduction to Inheritance
    • Introduction to Polymorphism
    • Introduction to .NET and the Base Class Library
  • 8 - Introduction to Application Security

    • Authentication and Authorization
    • Code Permissions on Computers
    • Introducing Code Signing
  • 9 - Core I/O Programming

    • Using Console I/O
    • Using File I/O
  • 10 - Application Performance and Memory Management

    • Value Types vs Reference Types
    • Converting Types
    • The Garbage Collector

Course Schedule

*Indicates a course that spans over multiple days.

**Indicates a course that is only a half day.