You are on page 1of 8

The C++ Programmer Track

Description:
The C++ Programmer Track is infos latest addition to the development trainings
provided. This track aims to assist the new comers into the programming
development world by training them to think like a programmer. Regardless of
the language used to do any program, all program languages share the general
concepts of programming in addition to the fundamental blocks of a
programming language. In this track, students will be exposed to the different
techniques of programming starting with gathering the business information, to
flow charting the required procedures needed by the program, and finally
implementing the flow chart design into an actual program.

Objective:
Analyzing software requirements.
Techniques of designing flow charting.
Fundamental of programming using C++.
Object oriented programming using C++.

Training Format:
Class Training Time Lab Time
2 Hours, 3 Days a Week 4 Hours, 1 Day a Week *
* Lab time will be administered by an instructor to solve in class assignments and practices.

Track Summary:
Part Duration
Flowcharting 20 Hours
Fundamental of Programming (Visual C++) 30 Hours
Object Oriented Programming (Visual C++) 30 Hours
Outlines:

Flowcharting:
Module 1: Introduction to Flowchart
Flowcharting Software
ADVANTAGES OF USING FLOWCHARTS
The keys to successful flowcharting

Module 2: Basic Flowchart symbols


Using Terminator symbol
Using Input/Output Symbol
Using Proccess Symbol
Using Mathematical symbols

Labs:
How to use INPUT-OUTPUT, Process Symbols?

Module 3: Advanced Flowchart Symbols


Using Decision Symbol
Using Comparison Symbols

Lab:
How to use Decisions (Switching logic)?
Draw a flowchart to find the largest of 2 numbers A, B.

Module 4: Working With Loops


Using flowchart symbols to iterate through a loop

Lab:
How to draw loops using flowchart symbols?
Draw a flowchart to find the sum of first 50 natural numbers.
Draw a flowchart for computing factorial N (N!)
Fundamentals of Programming Visual C++:

Module 1: Introduction to Computers, Programming,


and Visual C++
The Origins of Visual C++
ANSI Visual C++
Very Simple Input, Output and Assignment
Simple Flow of Control

Module 2: Primitive Data Types and Operations


Identifiers
Data Types
Integers
Real numbers
Type Casting
Characters
Strings
User Defined Data Types

Module 3: Selection Statements


Boolean Values, Expressions and Functions
The Identifiers "true" and "false" in Visual C++
If Statement
Switch Statement

Module 4: Loops
For Loop
While Loop
Do ... While Loops

Module 5: Functions
The Need for Sub-programs
User-defined Functions
Value and Reference Parameters
Module 6: Arrays
Declaring an array
Assignment Statements and Expressions with Array Elements
Arrays as Parameters in Functions
Sorting Arrays
Two-dimensional Arrays

Module 7: Pointers and C-Strings


Introducing Pointers
Declaring Pointers
Assignments with Pointers Using the Operators "*" and "&"
The "new" and "delete" operators, and the constant "NULL"
Array Variables and Pointer Arithmetic
Dynamic Arrays
Automatic and Dynamic Variables
Linked Lists
The "." and "->" Operators
Creating a Linked List
Printing a Linked List
Strings
The Sentinel String Character '\0'
String Variable Declarations and Assignments
Some Predefined String Functions
String Input using "getline()"
Object Oriented Programming using Visual C++:

Module 1: Classes
Creating a Data Structure
Methods
Object Scope
VISUAL C++ Input and Output
Namespaces
Data Abstraction
Enforcing Data Encapsulation
File Organization
Classes in VISUAL C++
Objects
this Pointer

Module 2: Constructors and Destructors


Debug Output
The Default Constructor
When are Constructors Called?
The Destructor
The Copy Constructor
Other Constructors
Why Did It Work Before?
Composition
The Report Class
Code Reuse
Initialization Lists

Module 3: Inheritance
Inheritance
Bugreport
Protected Access Modifier
Access and Inheritance
Constructors and Inheritance
Initialization Lists Revisited
Multiple Inheritance
Module 4: Virtual Functions
Inheritance and Assignment
Inside Report's Assignment Operator
Using Pointers - a Quick Look at Basics
Class Assignment and Pointers
Static Binding
Dynamic Binding
Polymorphism
The show_rep() Function
Using the show_rep() Function
Designing Member Function Inheritance

Module 5: Pure Virtual Functions


Bugfix and Its Relationship with Bugreport
Bugfix: Association with Bugreport
Using Bugfix with show_rep()
Adding Bugfix to the Hierarchy
Coding for the Document Class
Reexamining the Document Class
Pure Virtual Functions
Updated: Designing Member Function Inheritance

Module 6: References and Constants


References
Displaying References
Changing References
Pass by Reference
Returning by Reference
Constant Variables
Constant References
Constant Methods

Module 7: New and delete


new and delete
Array Allocation
The Report Class
Compiler Version of the Copy Constructor
Guidelines for Copy Constructors
The Report Constructors and new
The Report Destructor and delete
Virtual Destructors
Module 8: Casting in VISUAL C++
Casting: A Review
New Casting Syntax
Creating a String Class
The String Class
The Conversion Constructor
Expanding Our Casting Options
Casting Operator
Using the Casting Operator

Module 9: Class Methods and Data


Class Data
Class Methods
Using the New Data
More on Class Methods

Module10: Overloaded Functions


Function Overloading
Using Overloaded Functions
Rules for Overloading
Overloading Based on Constness
Default Arguments
Invoking Functions with Default Arguments

Module 11: Overloaded Operators


The Basics of Overloading
Overloading operator+
Coping with Commutativity
Non-Commutative Operators
friends and Their Problems
The Assignment Operator
Overloading the >> Operator
Using Date with cout
Module 12: Exception Handling
Why Exception Handling?
try / catch / throw
Exception Classes
Standard Exception Hierarchy
Multiple catch Blocks
Catching Everything
Unhandled Exceptions
Exception in Constructors and Destructors
Designing for Exceptions

Date: 1 Oct. 2012

You might also like