- Why Programming -

Programming is one of the fastest growing occupations, there isn’t a real correlation between becoming a programmer and having a CS degree, and hence, there is an opportunity for anyone who can code to be part of this field. However, learning to code shouldn't constrained to those interested in the profession. Non-programmers need to acquire basic knowledge about the equipment that is involved in all professions. Further, coding is helpful to youth to strengthen their skills in solving computational problems, and enhances their critical thinking and collaboration skills known to be hand in hand within the programming learning process. 

- The Program -

The course isn't part of a particular program, however, it a good place to start from. After completing the course, learners can dive more into programming and proceed with C++ Object-Oriented Programming, Data Structures using C/C++, and Java programming courses.

- The Course -

is a ten weeks self-paced course intended for non-programmers, it provides learners a solid introduction to programming using powerful, fast and popular C++ programming language. It will introduce students to computer based problem solving. They will be able to design, develop, compile, and debug programs in a high level programming language. Towards the end of the course, the learners will be able to implement a small system for a given case. 

- Course Objectives -

  • Module 1: Programming fundamentals
  • Module 2: Algorithms and flowcharts
  • Module 3: Formulate output statements 
  • Module 4: Create and use variables and constants
  • Module 5: Formulate input statements 
  • Module 6: Flow control statements for selection
  • Module 7: Flow control statements for repetition 
  • Module 8: Functions 
  • Module 9: Arrays
  • Module 10: Programming Project

- Module 1-

Programming Fundamentals

In this unit you will be introduced to the theoretical fundamentals of computer and programming. The background is essential to understand the programming process i.e. what will your code undergo until you get the output. 

There is a simple Lab in this module, which will demonstrate how to install "Microsoft Visual Community 2017". It is the tool recommended to use for coding C++.

Module 1: Learning Objectives:

    1. Understand the basic hardware components and software types
    2. Understand what is a program, programming language and the role of programmer
    3. Distinguish between high level programming languages and low level languages
    4. Understand each of the five stages of software development life cycle (ADDIE Model)
    5. Understand the steps from a high-level Program to an executable File (Compiling Process)
    6. Understand what is IDE, and install Visual Studio Community 2017 for coding C++

Module 1: Learning Tasks 

    1. Review learning resources
    2. Complete self-check quizzes
    3. Watch lab 0 demonstration and complete tasks of the lab 0 
    4. Submit Assignment#1

Module 1: Learning Resources
Reading Review: Chapter 1 

      Module 1: Learning Activities

      The following are two short self-check quizzes. The main objective of these informal quizzes is to assess your own understanding and learning progress after completing the learning resources. These quizzes are automatically marked once you submit them showing you your mistakes if there are any and the correct answers. You can re-take the quizzes as many times as you desire i.e. unlimited number attempts.

      Module 1: Lab 

      Generally, software developers do their development work in some sort of Integrated Development Environment (IDE), which will have many built-in tools for editing, compiling, running, and debugging programs. Learners can use any free C++ IDE. However, I recommend using Visual Studio Community, installation instructions and demonstration is given below.

      Module 1: Assessment 

      Reading review: Concept maps Tutorial
      Submit: Assignment#1 : Concept Map for Programming classifications  (Due: end of Week 1, Sunday 11:59 pm)
      Assignment 1 : Sample Example 1
      Assignment 1 : Sample Example 2

      C++ Resources