information
lectures and labs:
| schedule: |
W 6:30PM-9:45PM |
| room: |
4428 N |
computer account:
You will need to have access to a computer with UNIX for this class
(for example, Linux or Mac OS-X).
If you don't have one, you can apply for a UNIX account and use the
public machines in the library or the WEB building.
In class, we will use Mac laptops and the OS-X UNIX-based operating system.
textbook:
C++ by Dissection
by Ira Pohl
publisher: Addison Wesley (2001)
Here it is on
Amazon
|
|
additional course materials:
Course lecture notes, additional readings and multi-media sources
will be available on-line.
course description:
A second course in programming.
Advanced programming techniques emphasizing reliability,
maintainability, and reusability.
Module design and multi-file programs.
Abstract data types.
Objects, classes, and object-oriented design.
Storage class and scope.
Addresses, pointers, and dynamic storage allocation.
Test suites, test drivers, and testing strategies;
debugging, assertions, and an introduction to formal techniques.
Recursion and function parameters.
(Not open to students who are enrolled in or have completed cis22.)
schedule of topics:
| unit | topic |
|
| I | Fundamentals |
| II | Classes |
| III | Specifications and Testing |
| IV | Pointers and Memory |
| V | Object-oriented programming |
| VI | Recursion |
| VII | Templates |
|
prerequisites:
cis1.5.
assessment:
The course grade will be made up of
the following components, out of 100 points:
- 7 assignments -- 53 points total
- attendance -- 7 points (1 point per unit)
- one midterm -- 15 points
- final exam -- 25 points
|