CS309

Prerequisites
CS210 or CS230 or ET181
Knowledge of modular programming using functions.

This course is designed to teach the C++ language to technically able students not majoring in Computer Science. It presupposes that the student has taken a course in Computer Science that includes modular programming with functions and procedures.

Purpose of Course
The purpose of this course is to give non-majors an introduction to the C++ language and object oriented programming.

Course Content
This course deals with various topics including the syntax and semantics of C++, modular design of programs, functions, iterative structures, selection structures, classes, arrays, abstract data types (ADT's) and the separate compilation of modules. The course also includes a brief introduction to the string class and template classes. Grading will be determined by quizzes, computer projects, a midterm, and a final exam. For the graduate students, there is an additional graduate project that asks the student to design a C++ class that relates to their field of study. The class should have all of the features of a well designed ADT.

Resources

The student will be working on various projects on UNIX work stations, and will have on-line access to notes, examples and some C++ development tools. All projects will be turned in through an electronic submission program, and grades of projects, along with comments, will be sent via E-mail. Overheads are used in lectures, along with chalk on the blackboard.

Relation to Other Courses
This course will concentrate on the syntax and semantics of C++. The CS240 sequence emphasizes more design issues, and a more rigorous approach to Computer Science.

Majors and Degrees
This course is not meant to count towards any major.