This course is for experienced C programmers who want to program in C++. The examples and exercises require a basic understanding of algorithms and object-oriented software.
About the Course
The course provides an overview of C++ for the experienced C programmer. You will learn how C++ is more powerful than C. The C++ STL library will be featured. This library allows C++ programmers to code generically, efficiently and at a high level. You will learn how to write basic graph algorithms such as the shortest path algorithm. You’ll then put this skill to use in a programming assignment aimed at producing an intelligent hex player.
Recommended Background
One year of experience in programming with C or a similar programming language is required. You should have a basic familiarity with implementing standard CS algorithms, especially graph algorithms, such as the shortest path algorithm. Some object-oriented software development is also desirable. These topics are typically taught in a first year computer science curriculum.
Suggested Readings
Although the lectures are designed to be self-contained, a serious C++ programmer will need access to reference materials. The Wikipedia C++ article is a good place to start. The course is based on the instructor’s text: C++ for C Programmers: 3rd Edition.
Course Format
The course consists of lecture videos ranging from 5 and 18 minutes in length. Each of these videos includes one or two integrated quiz questions. There will be programming assignments and a final exam.
FAQ
- Will I get a Statement of Accomplishment after completing this class?Yes. Students who successfully complete the class will receive a Statement of Accomplishment signed by the instructor.
- What resources will I need for this class?For this course, all you need is an Internet connection, and access to a C++ compiler. The class will expect that code can run on the free gnu compiler g++.
- What is the coolest thing I’ll learn if I take this class?You will learn how to code generically. You will produce a high quality game playing program for the non-trivial game Hex.