Advanced C++ Programming
ABOUT THE COURSE!
Welcome to the FUNIX’s Advanced C++ Programming Course!
The Object Oriented Programming (OOP) is one of the programming methods that almost all programmers must know and be able to use fluently. This course is the next of the Basic Programming with C++ Course, helping the students to get more deeper knowledge about the concepts and the methodology of OOP with C++. Each lesson is presented with many easy-to-understand theories and illustration parts. After finishing this course, students are able to handle the OOP techniques with C++ and easily learn other OOP programming languages. Besides this benefit, the students are also equipped with some common data structures and algorithms implemented by C++ programming language.
During the learning process, the students will practice via exercises, labs and projects to get more programming skills and help them to easily get the OOP and Advance programming knowledge with C++ programming language.
COURSE INFORMATION
Course code: | CPP201x_2.1 |
Course name: | Advanced C++ Programming |
Credits: | 3 |
Estimated Time: | 6 weeks. Student should allocate at average of 2 hours/ day to complete the course. |
COURSE OBJECTIVES
- Understand the OOP characteristics in C++ programming language (Inheritance, polymorphism, constructor, destructor, virtual function, namespace)
- Understand the concepts of the generic programming, generic algorithms, template in C++
- Be aware of the exception handling in C++
- Understand some data structures implemented in C++ (stack, queue, list, tree)
- Be knowledgeable about some basic sorting algorithms implemented in C++ (selection sort, insertion sort, merge sort, quick sort)
- Understand some basic searching algorithms implemented in C++ (linear search, binary search)
- Understand the container concept (the sequential, associative containers)
- Understand, be able to use the concepts of input/output and string stream; fluently implement the file input/output
- Know the generic concepts and be able to install a generic function, generic class and implement generic algorithms.
Course structure
Module 1 - Object-Oriented Programming (OOP) with C++
- Lesson 1 - Inheritance
- Lesson 2 - Polymorphism
Project 1
Module 2 - Generic Programming, Exception Handling, Input/Output streams
- Lesson 3 - Generic Programming
- Lesson 4 - Exception
- Lesson 5 - Input/Output streams
Project 2
Module 3 - Containers & Generic Algorithms
- Lesson 6 - Sequential Containers
- Lesson 7 - Associative Containers
- Lesson 8 - Generic Algorithms
Project 3
Module 4 - Non-STL Data Structures and Algorithms
- Lesson 9 - Non-STL Data structures
- Lesson 10 - Non-STL Algorithms
Project 4
Module 5 - Namespace & String Class
- Lesson 11 - Namespace in C++
- Lesson 12 - String Class
DEVELOPMENT TEAM
COURSE DESIGNERS
Luong Trung Kien
|
REVIEWER
Vu Le Hanh
|
TESTER
Trinh Tuan Dat
|
MOOC MATERIALS
In modern times, each subject has numerous relevant studying materials including printed and online books. FUNiX Way does not provide a specific learning resource but offers recommendation for students to choose the most appropriate source to them. In the process of studying from many different sources based on that personal choice, students will be timely connected to a mentor to respond to their questions. All the assessments including multiple choice questions, exercises, projects and oral exams are designed, developed and conducted by FUNiX.
Learners are under no obligation to choose a fixed learning material. They are encouraged to actively find and study from any appropriate sources including printed textbooks, MOOCs or websites. Students are on their own responsibilities in using these learning sources and ensuring full compliance with the source owners’ policies; except for the case in which they have an official cooperation with FUNiX. For further support, feel free to contact FUNiX Academic Department for detailed instructions.
Learning resources are recommended below. It should be noted that listing these learning sources does not necessarily imply that FUNiX has an official partnership with the source’s owner: Udemy, Youtube, Codelearn, Sololearn.
Feedback channel
FUNiX is ready to receive and discuss all comments and feedback related to learning materials via email program@funix.edu.vn