Course Overview:
The Object Oriented Programming-1 course is designed to teach students the fundamentals of coding in the C/C++ programming languages The course provides introductory knowledge of C++ programming language and its subset, the C programming language. The course will discuss program structure, blocks, storage types, console and file I/O, functions, arrays, strings, pointers, call-by-reference, call-by-value, and dynamic memory allocation. This course will focus on the fundamental and advanced features of the C and C++ languages and the Standard Template Library (STL). The students will develop a deeper understanding of the basic structures of languages – classes, functions, exception handling, including many advanced features such as constant expressions, move semantics, smart pointers, functions and lambda functions. The latter part of the course will focus on the Standard Template Library, including learning details of the library that supports I/O, mathematical algorithms, containers, and numerous special-purpose classes like strings, date/time, and localization. Students will also learn about Object-Oriented Programming Concepts in C++, exception handling, and file handling.
Prerequisite:
- The students must have completed grade 12 or equivalent education.
- Must pass in-house designed entry exam covering basic math, algebra, and calculus (minimum score 60%).
- Students from non-English speaking countries must pass the English Language Proficiency Test.
- English Language Proficiency Test scores (IELTS – 6.0, TOEFL – 70, PTE – 45, CAEL – 70, CAE – 176, Duolingo – 110, Password – 6.5, and PTE – 61) are acceptable.
Learning Outcomes:
- Demonstrate knowledge of basic programming concepts and principles of coding in C/C++ languages.
- Describe Object Oriented Programming Concepts.
- Demonstrate an in-depth understanding of C++ syntax and semantics.
- Identify and apply practical principles of object-oriented class design.
- Identify and mitigate common security vulnerabilities such as buffer overflows, memory management errors, and input validation issues in C/C++ code.
- Recognize and apply best practices and secure coding techniques to write robust, reliable code in C/C++.
- Implement secure coding standards and frameworks such as CERT C/C++ and MISRA C/C++ to enhance the security of C/C++ applications.
- Demonstrate a comprehensive understanding of the tools and techniques used to assess and test the security of C/C++ code, including static analysis, dynamic analysis, and fuzz testing.
- Apply the principles of secure software development life cycle (SDLC) and the role of secure coding practices in each phase of the SDLC.
- Evaluate the ethical and legal implications of secure coding practices, including compliance with industry regulations and standards.
- Develop practical communication skills to explain security concepts and issues to technical and non-technical stakeholders.
Course Content & Topics:
Class 1: Introduction to Object-Oriented Programming
Class 2: C++ Programming Basic – I
Class 3: C++ Programming Basic – II
Class 4: Loops and Decisions Statement
Class 5: Structure and Function
Class 6: Objects and Classes
Class 7: Arrays and Strings
Class 8: Polymorphism
Class 9: Inheritance in C++
Class 10: Pointers in C++ – I
Class 11: Pointers in C++ – II
Class 12: Data Conversion
Class 13: Exception Handling and Review
Final Exam: MCQs and a case study project
Credit Information:
- Credits: 3
Duration:
- 14 Weeks: 3 hrs/week
Course & Related Fees:
- Domestic Students : $650 (Six hundred and fifty dollars)
- International Students: $750 (Seven hundred and fifty dollars)
For a detailed breakdown, please refer to Policy #S-005A Cyber Security Diploma and Course Fee Schedule
Non-Refundable Fees:
- Application Fee: $50.00/course (payable online and non-refundable)
