Outline | People | Reading | Grading | Academics | Homepage |
Course Outline* | |||||
Lecture | Topic(s) | Programs | Book(s), Notes | ||
---|---|---|---|---|---|
C Language | |||||
1. Aug 22 | First program; running a program from a web browser | first_ pgm. c, first_ pgm_ cgi_ get. c, first_ pgm. html | DDC §2.1-3 | ||
2. Aug 24 | Operators | DDC §2.5-6 | |||
3. Aug 29 | Flow of control | DDC §4; Semicolon before else | |||
4. Aug 31 | Functions; the C runtime library | math.c, rand.c | DDC §5.1-8 | ||
5. Sep 5 | Scope of variables, storage classes; separate compilation | StorageClasses/ | DDC §5.12 | ||
Tuesday, Sep 5, 17h00 | Last day to add course; please use TRACS | ||||
6. Sep 7 | Arrays and pointers, args to main | arrays.c, mainarg.c | DDC §6.1-6.5, §6.10, §6.20-22 | ||
7. Sep 12 | Recursion, debugging | Recursion/ | DDC §5.13-18 | ||
8. Sep 14 | strings; scanf, printf, I/O; the preprocessor, macros | scanf.c, types.c | DDC §8, DDC §13 | ||
9. Sep 19 | Typedef, structures, unions, header files; storage allocation, lists | Lists/ | DDC §10.1-5, §10.18, §12.1-4 | ||
10. Sep 21 | Pointers to functions; OO programming in C | ptrs2fncs. c, OO_pgm_in_C/ | DDC §7.26 | ||
Friday, Sep 22, at midnight | First C project due, counts 16.67% | ||||
Java Language | |||||
11. Sep 26 | First Java program; Basic object design: members, constructors, cloning, destructors | account.java, test_acc.java, Inherit/ | DDJ §8 | ||
12. Sep 28 | Derivation, inheritance, public, private | Inherit/ continued | DDJ §9 | ||
13. Oct 3 | Abstract methods; collections, packages | Stacks/, Lists12/ | DDJ §9 | ||
14. Oct 5 | Catch-up; exceptions; inner classes | exception.java | DDJ §14 | ||
15. Oct 10 | Abstract Window Toolkit, the Java 1.0 and 1.1 event models, applets; Panel and Button | Nutshell/ ch6/ First Applet.*, Nutshell/ ch7/ | DDJ §3 | ||
16. Oct 12 | AWT continued: Frame, Canvas, Checkbox, CheckboxGroup, Label | CheckboxTest. java | |||
Friday, Oct 13, at midnight | Second C project due, counts 16.67% | ||||
Mon-Tue, Oct 16-17 | Columbus Day, no class | ||||
17. Oct 19 | AWT continued: TextField, ScrollBar, Color; Java archive files | Caviness/, Scroll Test _1 _1. java, Graphdraw/ | |||
18. Oct 24 | Multiple threads; animation | Threads/, BouncingCircle. java, BouncingCircle. html, SmoothCircle. java, SmoothCircle. html | DDJ §15, Sun tutorial | ||
19. Oct 26 | Java beans | Nutshell/ ch10/ | Sun's BDK, DDJ §25 | ||
20. Oct 31 | Systems programming: sockets | DDJ §21 | |||
C++ Language | |||||
21. Nov 2 | First C++ program; basic object design: members, constructors, copy, destructors | account. cpp, inherit. cpp | DDC §16;
My comparision
of C++ and Java audio1a.ram (streamed); audio1a.ra (5.1M) audio1b.ram (streamed); audio1b.ra (5.1M) audio1c.ram (streamed); audio1c.ra (2.8M) |
||
22. Nov 7 | Derivation, inheritance, public, private; polymorphism: overloading of functions and operators; stream I/O |
inherit. cpp continued; transparencies written during makeup class |
DDC §18,
DDC §19, §21 audio2a.ram (streamed); audio2a.ra (5.1M) audio2b.ram (streamed); audio2b.ra (5.1M) audio2c.ram (streamed); audio2c.ra (0.9M) |
||
23. Nov 9 | Pointers and references, const, static |
DDC §15.8, §17.2, §17.7 | |||
Friday, Nov 10, at midnight | Java project due, counts 33.33% | ||||
24. Nov 14 | Templates and the STL | Lists/ | DDC §17.10, SGI's online manual | ||
25. Nov 16 | STL containers | map.cpp, index.cpp | |||
26. Nov 21 | STL iterators | ||||
Thursday-Friday, Nov 23-24 | Thanksgiving, no class | ||||
27. Nov 28 | STL algorithms | indir_ sort. cpp | |||
28. Nov 30 | Advanced topics: virtual member functions; code bloat and how to avoid it | Stacks/ | DDC §20 | ||
29. Dec 5 | Namespaces and inner classes; exceptions; multiple inheritance | exception.cpp; MultInher/ | DDC §19.15 | ||
30. Dec 7 | Wrappers/adaptors to existing libraries; traits |
prof3.h
|
N. Myers report on traits NEW audio3a.ram (streamed); audio3a.ra (5.1M) audio3b.ram (streamed); audio3b.ra (5.1M) audio3c.ram (streamed); audio3c.ra (1.1M) |
||
Tue, Dec 19, at 17h00 | C++ project due, counts 33.33% |
I am using
On-line information: All information on courses that I teach (except individual grades) is now accessible via html browsers, which includes this syllabus. My courses' directory is at
Late submissions: All programs must be submitted on time. The following penalties are given for (unexcused) late submissions:
©2000 Erich Kaltofen. Permission to use provided that copyright notice is not removed.