Authors: Douglas Wilhelm Harder and Prof. Hiren Patel
First, at the top of each page are links to sources of information relevant to
scientists and engineers. Many if not all of the articles written in these
sources is accessible by first-year students. We encourage you to consider
reading articles from these sites.
The material in this course is broken into multiple categories, together with
both required course material and optional material for students who would like
to challenge themselves.
The course material consists of the material linked to in the left-hand menu
under lecture materials together with some of the projects.
For students looking to explore beyond the scope of this course, there is
a collection of links describing other aspects of C++, an introduction to
C programming for those already proficient at C++, and an introduction to a
pseudo-Assembly language that will be used as optional material.
To get started, there are three options for programming in C++ to begin learning:
- The first is an on-line environment http://replit.com/.
This allows you to author C++ programs and to execute them; however, there are
no options to save your source code (other than to cut-and-paste it to a text
file on your own computer). While you cannot do serious C++ programming in
such an environment, it is never-the-less, a good place to start.
- The second, which is discouraged for most students not familiar with
the command prompt, is the direct use of the command-line interface
to use a text editor (e.g., gvim, Emacs, Notepad++ or nano), a compiler and a command-line debugger. In each case, you will use a
separate program to perform each aspect of code development.
- The third, and most recommended approach, is to install an
integrated development environment. This combines all of the features
described in the previous point in a single user-friendly interface.
To help you install an IDE, please refer to the link in the left-hand column.
Note that there are other on-line environments that you can use; however, cpp.sh has
the cleanest interface as well as an easy-to-remember URL. One issue with an on-line
environment, however, is that there is no guarantee that they will be available;
consequently, if you refuse to install an IDE and rely on cpp.sh, if the web-site
becomes unavailable two hours before a project, this is entirely your responsibility
and no extensions will ever be given for such an excuse.