Object Oriented Programming¶
This site is undergoing updates until the Semester finishes. Please refresh the page to make sure it’s the latest version.
Object Oriented Programming is worth 4 Total Credit Hours. 3 for Theory, and 1 for Lab. That means for 16 weeks, there will be 3 hours a week for Theory and 1 hour a week for Lab. Yes, we do three hours for Lab but that’s beside the point. Credit Hours are counted weirdly.
Absolutes if you don’t know just means “Out of 100%, it is this many percentage points”. So 40 Absolutes means it’s worth 40% of the total semester grade. Oh by the way, if you’re caught with Plagiarism this time, then they’ll take away 30 Absolutes. It’s better to just leave a task empty instead of copy it from someone else. Don’t use ChatGPT and don’t get help from someone else, unless they only explain the concept or question better to you. Just improve.
Outline for OOP Theory:
3 or more Assignments. Total Absolutes: 15
5 Quizzes. Total Absolutes: 15
1 Sessional-I. Total Absolutes: 15
1 Sessional-II. Total Absolutes: 15
1 Final Exam. Total Absolutes: 40
Outline for OOP Lab:
15 Lab Tasks. Total Absolutes: 30
1 Project. Total Absolutes: 35
1 Final Exam. Total Absolutes: 35
Grading Policy is Absolute Grading.
Textbooks:
Starting Out with C++: From Control Structures through Objects; Ninth Edition by Tony Gaddis
Starting Out with Programming, Logic, and Design; Third Edition by Tony Gaddis
Starting Out with C++; 8th Edition by Tony Gaddis
- Requirements
- 1) Dangling Pointers
- 2) Memory Leaks
- 3) Multidimensional Pointer Arrays
- 4) Wrapping up Pointers
- 5) Intro to Object Oriented Programming
- 6) More about Structures
- 7) Finalizing Structures
- 8) Intro to Classes
- 9) More about Classes
- 10) Constructors
- 11) Destructors
- 12) Constructors and Arrays
- 13) Copy Constructors
- 14) Static Class Members
- 15) this-> Pointer
- 16) Member Initializer List and Const Members
- 17) Const Objects
- 18) Friend Functions
- 19) Operator Overloading
- 20) Every Operator Overloaded
- 21) Overloading Operators for Default Data Types
- 22) Conversion between Data Types
- 23) Association, Composition, and Aggregation
- 24) Intro to Inheritance
- 25) All About Inheritance
- 26) Intro to Polymorphism
- 27) Virtual Functions
- 28) Virtual Destructors
- 29) Abstract Classes and Pure Virtual Functions