❗The content presented here is sourced directly from ThaiMOOC platform. For comprehensive course details, including enrollment information, simply click on the 'Go to class' link on our website.
Updated in [March 06th, 2023]
This course, C++ For Programmers, is designed for students who are already familiar with a programming language and wish to learn C++. It focuses on the 'how' of programming in C++, rather than the 'what'. For example, the lesson on functions will teach students how to create a function in C++, rather than what a function is.
The course is taught by several different instructors who have used C++ in their professional careers, so students get to experience different perspectives. Additionally, the course includes comments and tips from Bjarne Stroustrup, the original designer of C++.
By the end of the course, students will have a strong understanding of the fundamentals of C++ and be able to create their own programs.
[Applications]
After completing this course, students should be able to apply their knowledge of C++ to create programs for various applications. They should be able to understand the syntax of C++ and be able to write code that is efficient and well-structured. Additionally, they should be able to debug their code and identify potential errors. Finally, they should be able to use the various features of C++, such as classes, templates, and the Standard Template Library, to create powerful and robust programs.
[Career Paths]
1. Software Developer: Software developers use C++ to create applications and software programs. They are responsible for designing, coding, testing, and debugging software. As technology advances, software developers must stay up-to-date on the latest trends and tools in order to create the most efficient and effective programs.
2. Game Developer: Game developers use C++ to create video games. They are responsible for designing, coding, testing, and debugging the game. As technology advances, game developers must stay up-to-date on the latest trends and tools in order to create the most immersive and engaging gaming experiences.
3. System Administrator: System administrators use C++ to create and maintain computer systems. They are responsible for designing, coding, testing, and debugging the system. As technology advances, system administrators must stay up-to-date on the latest trends and tools in order to create the most secure and reliable systems.
4. Data Scientist: Data scientists use C++ to analyze and interpret data. They are responsible for designing, coding, testing, and debugging data analysis algorithms. As technology advances, data scientists must stay up-to-date on the latest trends and tools in order to create the most accurate and efficient data analysis solutions.
[Education Paths]
1. Bachelor of Science in Computer Science: A Bachelor of Science in Computer Science is a four-year degree program that provides students with a comprehensive understanding of computer science principles and their application to the development of software and hardware. Students learn the fundamentals of programming languages such as C++, as well as the principles of computer architecture, operating systems, and software engineering. This degree is ideal for those who want to pursue a career in software development, computer engineering, or computer systems analysis.
2. Master of Science in Computer Science: A Master of Science in Computer Science is a two-year degree program that provides students with an advanced understanding of computer science principles and their application to the development of software and hardware. Students learn advanced topics in programming languages such as C++, as well as the principles of computer architecture, operating systems, and software engineering. This degree is ideal for those who want to pursue a career in software development, computer engineering, or computer systems analysis.
3. Doctor of Philosophy in Computer Science: A Doctor of Philosophy in Computer Science is a four-year degree program that provides students with an in-depth understanding of computer science principles and their application to the development of software and hardware. Students learn advanced topics in programming languages such as C++, as well as the principles of computer architecture, operating systems, and software engineering. This degree is ideal for those who want to pursue a career in research, teaching, or software development.
4. Master of Science in Software Engineering: A Master of Science in Software Engineering is a two-year degree program that provides students with an advanced understanding of software engineering principles and their application to the development of software and hardware. Students learn advanced topics in programming languages such as C++, as well as the principles of software engineering, software design, and software testing. This degree is ideal for those who want to pursue a career in software development, software engineering, or software testing.
Course Syllabus
The Basics
You will learn Program structure, header files, IO Compilation and Execution.Arithmetic Operations
You will learn the most commonly used arithmetic operations in C++.Control Flow
You will learn if, if-else, while, do-while, and switch statements.Pointers
This lesson is a quick review of pointers. We discuss them here because we'll use them in the Arrays lesson.Array
We will do a preliminary exploration of two dimensional and multi-dimensional arrays.Functions
Functions with and without return values, with and without parameters, and passing by reference are demonstrated and used in this lesson.Classes
This lesson is a basic introduction to classes. You will practice creating and instantiating classes in this lesson.Overloading
We introduce overloading functions in this lesson as a segue into templates.Templates
We introduce generic programming through templates. First function templates then class templates.