Course Description
In this 5-day course, students will learn the basics of computer programming through the use of Microsoft Visual Studio 2013 and either the Visual C# or Visual Basic programming languages. Gain an understanding of the core programming fundamentals before moving on to more advanced courses such as 20483B: Programming in C#.
Agenda
Agenda
1 - Introduction to Core Programming Concepts
Computer Data Storage and Processing
Application Types
Application Life-Cycle
Code Compilation
Lab : Thinking Like a Computer
2 - Core Programming Language Concepts
Syntax
Data Types
Variables and Constants
Lab : Working with Data Types
3 - Program Flow
Introduction to Structured Programming Concepts
Introduction to Branching
Using Functions
Using Decision Structures
Introducing Repetition
Lab : Creating Functions, Decisions, and Looping
4 - Algorithms and Data Structures
Understand How to Write Pseudo Code
Algorithm Examples
Introduction to Data Structures
Lab : Working with Algorithms and Data Structures
5 - Error Handling and Debugging
Introduction to Program Errors
Introduction to Structured Error Handling
Introduction to Debugging in Visual Studio
Lab : Implementing Debugging and Error Handling
6 - Introduction to Object-Oriented Programming
Introduction to Complex Structures
Introduction to Structs
Introduction to Classes
Introducing Encapsulation
Lab : Implementing Complex Data Structures
7 - More Object-Oriented Programming
Introduction to Inheritance
Introduction to Polymorphism
Introduction to the .NET Framework and the Base Class Library
Lab : Implementing Inheritance
Lab : Implementing Polymorphism
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
Lab : Core I/O Programming
10 - Application Performance and Memory Management
Value Types vs Reference Types
Converting Types
The Garbage Collector
Lab : Using Value Types and Reference Types
Audience
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 20483B: Programming in C#.