CS2136 Schedule. D-Term 2004

Modified 4/7/04
 

Day

Date

Topic

Reading

Due

Tuesday

3/16

Course Overview. 
History of Programming Languages.

 

 

Thursday

3/18

History of Programming Languages.

 

 

Friday

3/19

Logic Programming & Prolog

 Clocksin & Mellish, Ch. 1.

 

Monday

3/22

Logic Programming & Prolog

 Clocksin & Mellish, Ch. 2.

 

Tuesday

3/23

Structures and Rules

 

 

Thursday

3/25

Prolog: Debugging & Cut

 Clocksin & Mellish, Ch. 4 & 8.

 

Friday

3/26

Prolog and First-Order Predicate Calculus

 Clocksin & Mellish, Ch. 10.

 

Monday

3/29

Prolog and First-Order Predicate Calculus

 

 

Tuesday

3/30

Review for Exam 1

 

Project 1

Thursday

4/1

--

--

Exam 1

Friday

4/2

Object-Oriented Programming. 
Java Introduction / Review.

 Eckel, pp. 31 – 71 (Chapter 1, start to “Server-Side Programming); skim 72 – 76 (to the end of the chapter)

 

Monday

4/5

Java Introduction / Review.

 Eckel, Chap. 2; skim Chap. 3

 

Tuesday

4/6

No class

 

 

Thursday

4/8

Java classes and inheritance.

Eckel, pp. 165 – 183 (Chapter 4, start to “The this keyword”); 224 – 240 (Chapter 5, “Java Access Specifiers” to end).

 

Friday

4/9

Java classes and inheritance II.

 Eckel, pp. 241 – 261 (Chapter 5, start to “protected”; 283 – 296 (Chapter 7, “The twist” to Abstract Classes and Methods”).

 

Monday

4/12

Java classes and inheritance III.

 Eckel, pp. 202 – 211 (Chapter 4, “Array Initialization to end); 1060 – 1067 (Appendix A, “Immutable Strings” to end.)

 

Tuesday

4/13

Overriding, overloading, and polymorphism. 
Final & Static. 
Strings

 

 

Thursday

4/15

Arrays. 
Interfaces. 

 Eckel, pp. 315 – 331 (Chapter 8., start to “Nesting Interfaces”)

Project 2

Friday

4/16

Containers.

 Eckel, pp. 481 – 495 (Chapter 11, “Introduction to containers” to “Array List”); skim 505 – 545  (skim “Collection functionality” to “Overriding hashCode()”).

 

Monday

4/19

Exceptions.

Eckel, pp. 371 – 394 (Chapter 9, start to “The special case of RuntimeExceptions”).

 

Tuesday

4/20

Project Presentation Day – no classes

 

 

Thursday

4/22

Exceptions

Eckel, pp. 400 – 404 (Chapter 9, “Exception Restrictions”); 408 – 419 (“Exception matching” to end of chapter.)

 

Friday

4/23

GUI.

Eckel, pp. 765 – 785 (Chapter 14, start to “Text Areas”).

Project 3

Monday

4/26

GUI.

Eckel, pp. 785 – 801 (Chapter 14, “Controlling Layout” to “Tracking multiple events”); skim 801 – 835 (skim “A catalog of Swing components” to “Pop-up menus”).

 

Tuesday

4/27

Event handler design. 
Multitasking & Threads

Eckel, pp. 699 – 744 (Chapter 13, start to “Critical sections”.).

 

Thursday

4/29

Multitasking & Threads.

Eckel, pp. 744 – 752 (Chapter 13, “Thread states” to “More sophisticated cooperation”).

 

Friday

4/30

I/O. 
Java networking.

Eckel, pp. 583 – 615 (Chapter 12, start to “Redirecting standard I/O”); 675 – 694 (“Regular expressions” to end of chapter); skim 650 – 673 (section on “Object Serialization”).

Project 4

Monday

5/3

Review for Exam 2

 

 

Tuesday

5/4

--

--

Exam 2