Syllabus
- Strings and Pointer variables and their applications and revision of arrays.
(Expected Time: 2.5 weeks)
- Pointers and their relationship with its data types
- Pointer arithmetic and arrays
- Pointers and Dynamic Memory Management
- Pointers with functions and other considerations
- Pointers with multiple levels of indirection
- Assignment # 1 and Assignment # 2 and Assignment # 3.
- Simple File Handling (it will continue to happening along the course).
- C-Structures
(Expected Time: 1 week)
- Text Editor (Project 1): A Mini-Notepad++ (VIM).
- Object Oriented Programming in C++:
(Expected Time: 2.5 weeks)
- Classes, Abstraction and Encapsulation, this pointer and how compiler manages the objects and encapsulation.
- Aggregation, Composition and Association
- Pointers with Objects: Deep and Shallow Copies
- Assignment # 4, Assignment # 5
- Mini Database management system (cricinfo or facebook)
- Operator Overloading in C++
(Expected Time: 2 weeks)
- HUGE-INTEGERS (Project 3)
- Inheritance & Polymorphism
(Expected Time: 2 weeks)
- Assignment # 6 (Inheritance Assignment)
- Assignment # 7 (Paint Brush using Inheritance and Graphics).
- Converting ITC-Chess into Inheritance and Polymorphism based implementation Project 4
- Making generic classes (Templates)
(Expected Time: 1 weeks)
- How to implement growable arrays and vector implementation.
- Stack Implementation and its applications
- Queue Implementation
- Many problems related to stacks/Queues (Project 5)
- Introduction to Data Structures
- Implementing Linked-List and Introduction to Trees
- Standard Templates Library
(Expected Time: 2 weeks)
- Practice of many Programming competitions questions which require STL containers (Vector, Deque, Stack, Queue, Map).
- Exception Handling
(Expected Time: 1 weeks)
- Recursion
- Simple Recursion Problems
- Factorial
- Permutation/Combination
- Power, GCD
- Advanced Recursion Problems
- FAST Power
- Fibonacci numbers and Memoization
- Introduction to C#
- Implementing minesweeper
- Implementing The Game of Chess
- Introduction to UNITY Framework
- Implementing HatTrick
- Implementing 3D Space Invader
- Implementing Flappy Plane
- Implementing Science Puzzles
Policy regarding Plagiarism
- Plagiarism is not tolerable in any form. Minimum penalty is an ‘F’ grade in the course. It is the responsibility of the student to protect their assignments from being copied. In case of cheating, both parties will be considered equally responsible.
Texts
Grading
- Midterm 15%
- Projects Final Exam 15%
- Final 20%
- Quizzes 5%
- Assignments 25%
- Project 20%