Introduction to Core Programming Concepts
Introduction to Core Programming Concepts provides background and foundational information on how computers process information, discusses the different types of applications that a programmer can create, and provides information on how code is compiled and interpreted by a computer.
Program Flow 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 through the use of functions, decision structures, and looping constructs. This module will also help students understand that errors are a part of programming, and they must understand how to anticipate errors, handle those errors in code, and present a good user experience with a program.
Classes and Objects
Introduction to Object-Oriented Programming provides an introduction to the concepts related to object-oriented programming (OOP). The content is 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 onto classes. This module helps the students gain an understanding of how to encapsulate data and related functionality within a class.
Classes and Inheritance
Application Performance and Memory Management enables students understand that memory on a computer is a finite resource. It talks about how good application design and good coding discipline with memory conservation and memory management will help programmers learn to develop applications that users will like. This is because these applications will be fast, responsive, and do not negatively impact other applications.
Advanced Object-Oriented Programming
“More Object-Oriented Programming”, teaches students about inheritance and polymorphism in classes and function overloading. Function overloading and polymorphism can go hand-in-hand because often times when you inherit from a class, you want to override or change the existing behavior to suit the needs of your class. The module also provides an introduction to the base class library in the .NET Framework so that students can start thinking about the existence of functionality in other class files and how they can search the .NET Framework to find this functionality and take advantage of it.