Instructor

M55337A : Introduction to Programming Training

Curriculum

Ratings

( 3.9 Ratings )

Live Online Classes starting on 01 January, 1970

M55337A : Introduction to Programming

The M55337A : Introduction to Programming course is a comprehensive Microsoft programming course designed to equip beginners with the fundamental skills and knowledge necessary to understand and engage in software development. Starting with the basics of how computers work and the types of software applications, the course progresses through the software development lifecycle, diving into core programming language concepts with a focus on C# syntax, data types, and variables.

As learners advance through understanding program flow, formulating algorithms, and managing data structures, they will also learn to handle bugs and errors using structured exception handling and debugging tools. The course emphasizes practical skills such as I/O operations, object-oriented programming principles including inheritance and polymorphism, and application security. Additionally, students will refine their coding style, embrace agile practices, and utilize design patterns, all essential for creating efficient and secure software applications. This introduction to programming course lays a solid foundation for aspiring developers to build upon in their future programming endeavors.

 

Course Description:

Throughout the course, students will explore core programming concepts including:

  • Computer Storage and Data Types

  • Decision Structures

  • Repetition using Loops

  • Object-Oriented Programming: covering classes, encapsulation, inheritance, and polymorphism.

  • Exception Handling

  • Application Security

  • Performance and Memory Management

This foundational training aims to prepare students for more advanced courses, particularly Programming in C#.

 

Prerequisites:

Before attending this course, students should have:

  • Basic computer skills, including the ability to start programs, open and save files, and navigate application menus.

  • A logical understanding of comparisons and number theory.

  • The ability to create, understand, and follow structured directions or step-by-step procedures.

  • An aptitude for applying abstract concepts to concrete examples.

 

Who Should Attend?

This course is intended for:

  • High school students

  • Post-secondary school students

  • Career changers

 

Course Outline:

Module 1: Introduction to Core Programming Concepts
This module provides background and foundational information on how computers process information, discusses the different types of applications that a programmer might be creating, and then provides information on how code is compiled and interpreted by a computer.

Lessons

  • Computer Data Storage and Processing

  • Application Types

  • Application Lifecycle

  • Code Compilation

Lab 1: Thinking Like a Computer

  • Describe computer data storage and processing concepts

  • Describe application types

  • Describe the lifecycle of an application

  • Describe code compilation

After completing this module, students will be able to:

  • 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 decision structures in a computer program

  • Create and use repetition (loops) in a computer program

Module 2: Core Programming Language Concepts
This module covers programming language syntax and the importance of using good syntax and following the syntax rules for the chosen language. This module also discusses the core data types and how to store these data types in computer memory by using variables and constants.

Lessons

  • Syntax

  • Data Types

  • Variables and Constants

Lab 1: Working with Data Types

  • Define syntax

  • Explain the different types of core data used in programs

  • Declare and use variables and constants in a computer program

After completing this module, students will be able to:

  • Define syntax

  • Explain the different types of core data used in programs

  • Declare and use variables and constants in a computer program

Module 3: Program Flow
This module covers how code is executed in a computer program, such as top to bottom, in structured programming and branching in code execution. The module teaches these concepts using functions, decision structures, and looping constructs.

Lessons

  • Introduction to Structured Programming Concepts

  • Introduction to Branching

  • Using Functions

  • Using Decision Structures

  • Introducing Repetition

Lab 1: Creating Functions, Decisions, and Looping

  • Describe structured programming

  • Create and use functions in your code

  • Create and use decision structures

  • Create and use looping structures

After completing this module, students will be able to:

  • Describe structured programming

  • Create and use functions in your code

  • Create and use decision structures

  • Create and use looping structures

Module 4: Algorithms and Data Structures
This module introduces the concept of an algorithm by outlining all the steps required, including the decisions to be made as the routine progresses. The module also discusses how to translate these steps into pseudocode for evaluation of the algorithm, which will then be translated into actual code.

Lessons

  • Understand How to Write Pseudocode

  • Algorithm Examples

  • Introduction to Data Structures

Lab 1: Working with Algorithms and Data Structures

  • Transfer problem statements into pseudocode

  • Create algorithms

  • Translate pseudocode into programming code

  • Create simple algorithms in code

  • Create data structures to store data

Module 5: Error Handling and Debugging
This module helps students understand that errors are a part of programming, and they must anticipate errors, handle those errors in code, and present a good user experience. This module introduces structured exception handling as a mechanism to deal with errors.

Lessons

  • Introduction to Program Errors

  • Introduction to Structured Error Handling

  • Introduction to Debugging

Lab 1: Implementing Debugging and Error Handling

  • Implement structured exception handling

  • Debug applications by using Visual Studio 2022

Module 6: Introduction to Object-Oriented Programming
This module covers an introduction to the concepts related to object-oriented programming (OOP). The content has been split across two modules, with this module focusing on basic OOP concepts that will provide sufficient knowledge to understand complex data structures, starting with structs and then moving on to classes. This module helps students gain an understanding of how to encapsulate data and related functionality within a class.

Lessons

  • Introduction to Complex Structures

  • Introduction to Structs

  • Introduction to Classes

  • Introducing Encapsulation

Lab 1: Implementing Complex Data Structures

  • Create and use structure types

  • Create and use basic class files

  • Choose when to use a struct vs a class

After completing this module, students will be able to:

  • Create and use structure types

  • Create and use basic class files

  • Choose when to use a struct vs a class

Module 7: More Object-Oriented Programming
This module teaches students about inheritance and polymorphism in classes and function overloading. Function overloading and polymorphism often go hand-in-hand, such as when you inherit from a class, or when you want to override or change the existing behavior to suit the needs of your class. The module also introduces the base class library of .NET so that students can start to think about the existence of functionality in other class files and how they can search the .NET libraries to find this functionality and take advantage of it.

Lessons

  • Introduction to Inheritance

  • Introduction to Polymorphism

  • Introduction to .NET and the Base Class Library

Lab 1: Implementing Inheritance
Lab 2: Implementing Polymorphism

  • Use inheritance in OOP

  • Implement polymorphism in your classes

  • Describe how the base class library is constructed

  • Find class information by using the Object Browser

After completing this module, students will be able to:

  • Use inheritance in OOP

  • Implement polymorphism in your classes

  • Describe how the base class library is constructed

  • Find class information by using the Object Browser

Module 8: Introduction to Application Security
This module helps students think about security in their applications. It introduces the concepts of authentication and authorization for users and also introduces the concept of permissions for running code. It explains that operating systems might prevent certain aspects of the program from executing, such as saving a file to a directory to which the user running the app might not have permission to write. The module briefly covers code signing and why programmers might want to consider using it.

Lessons

  • Authentication and Authorization

  • Code Permissions on Computers

  • Introducing Code Signing

Module 9: Core I/O Programming
This module introduces some core input/output (I/O) concepts that programmers will use while creating applications. Starting with console I/O, this module introduces input and output to the Console window. The module also talks about reading from and writing to the filesystem.

Lessons

  • Using Console I/O

  • Using File I/O

Lab 1: Core I/O Programming

  • Read input from a console

  • Output data to the console

  • Read and write text files

After completing this module, students will be able to:

  • Read input from a console

  • Output data to the console

  • Read and write text files

Module 10: Application Performance and Memory Management
This module enables students to understand that memory on a computer is a finite resource. It talks about how good application design and good coding discipline with memory management will help programmers develop applications that are fast, responsive, and do not negatively impact other applications.

Lessons

  • Value Types vs Reference Types

  • Converting Types

  • The Garbage Collector

Lab 1: Using Value Types and Reference Types

  • Implement value and reference types correctly in an application

  • Convert between value types and reference types

  • Use the garbage collector

After completing this module, students will be able to:

  • Implement value and reference types correctly in an application

  • Convert between value types and reference types

  • Use the garbage collector

(3.9 Ratings)

Download Course Contents

Still unsure?
We're just a click away


Course Outline PDF

SpireTec Unique Features

course-img
1-On-1 Training

Benefit from our 1-On-1 Training for personalized, focused, and effective learning experiences.

course-img
Customized Training

Experience our Customized Training service tailored to meet your specific learning needs and goals

course-img
4 - Hours / Weekend Session

Join our Class featuring 4 - Hours / Weekend Session for in-depth learning and expert training.

course-img
Free Demo Class

Join our Free Demo Class to experience top-notch training and expert guidance first hand!

Purchase This Course

Request More Information

CERTIFICATE

Get Ahead With SpireTec Solutions
Training Certificate

Earn your Certificate

Our course is exhaustive and this certificate is proof that you have taken a big leap in mastering the domain.

Differentiate yourself with Masters Certificate

Our course is exhaustive and this certificate is proof that you have taken a big leap in mastering the domain.

Share your achievement

Our course is exhaustive and this certificate is proof that you have taken a big leap in mastering the domain.

Need Customized Curriculum?

Our course is exhaustive and this certificate is proof that you have taken a big leap in mastering the domain.

Talk To Adviser
course-certificate

Top Certifications