Textbooks
Recommended
Text: Horstmann, Cay. Big Java. 4th ed. Wiley, 2009. ISBN: 9780470509487. [Preview with Google Books] Look for discounted pricing, and you may be able to find it used. You may use the 3rd edition.
Optional
NR: Press, William, Saul Teukolsky, et al. Numerical Recipes in C: The Art of Scientific Computing. Cambridge University Press, 1992. ISBN: 9780521437202. [Preview with Google Books]
The following table lists readings from the required and optional texts.
LEC # | TOPICS | READINGS (3D ED.) | READINGS (4TH ED.) |
---|---|---|---|
Control and Scope | |||
L 1 | Course Overview, Introduction to Java | — | — |
L 2 | Interactive Development Environment: Eclipse | Text: 1.1–1.8 | Text: 1.1–1.7 |
L 3 | Operators, Control Structures | Text: 4.1–4.5 | Text: 4.1–4.4 |
L 4 | Data Types, More Operators | Text: 5.1–5.4 | Text: 5.1–5.4 |
L 5 | More Data Types, Control Structures, Intro to Methods | Text: 6.1–6.4 | Text: 6.1–6.4 |
L 6 | Methods and Scope | Text: 2.1–2.4, 8.8 | Text: 2.1–2.5, 8.8 |
Classes and Objects | |||
L 7 | Classes and Objects | Text: 2.5–2.10, 3.1–3.8 | Text: 2.6–2.10, 3.1–3.8 |
L 8 | Classes II | Text: 8.1–8.5 | Text: 8.1–8.5 |
L 9 | Methods and Objects, Access | Text: 8.9 | Text: 8.9 |
L 10 | Static Methods and Data | Text: 8.6–8.7 | Text: 8.6–8.7 |
L 11 | Arrays, Arraylists | Text: 7.1–7.7 | Text: 7.1–7.4, 7.6, 7.8 |
L 12 | Recursion | Text: 13.1–13.4 | Text: 13.1–13.4 |
Inheritance | |||
L 13 | Inheritance: Subclasses | Text: 10.1–10.4 | Text: 10.1–10.4 |
— | QUIZ I | — | — |
L 14 | Inheritance II: Abstract classes, methods | Text: 10.5–10.7 | Text: 10.5–10.6 |
L 15 | Inheritance III: Interfaces | Text: 9.1–9.4 | Text: 9.1–9.4 |
L 16 | Design Lab I - Inheritance | Text: 12.1–12.5 | Text: 12.1–12.5 |
Graphical User Interfaces | |||
L 17 | Introduction to Swing | Text: 2.11–2.13, 3.9 | Text: 2.11–2.13, 3.9 |
L 18 | Swing Event Model | Text: 9.6–9.10 | Text: 9.7–9.11 |
L 19 | Inner Classes, Layout Managers | Text: 9.5, 18.3 | Text: 9.5, 18.3 |
L 20 | Model-View-Controller, Timers | Text: 18.1 | Text: 18.3 |
L 21 | 2D API, 2D Transformations | — | — |
L 22 | Design Lab II- Swing | — | — |
Streams (Input/Output) and Exceptions | |||
L 23 | Streams I, Exceptions | Text: 11.1, 19.1–19.2 | Text: 11.1, 19.1–19.2 |
L 24 | Streams II | Text: 19.3–19.4 | Text: 19.3–19.4 |
— | QUIZ II | — | — |
Sensors and Threads | |||
L 25 | Sensors I | Phidgets documentation | Phidgets documentation |
L 26 | Sensors II | Phidgets documentation | Phidgets documentation |
L 27 | Design Lab III - Sensors | — | — |
L 28 | Threads | Text 21.1–21.3 | Text 20.1–20.3 |
L 29 | Threads and Sensors | Text 21.4 | Text 20.4 |
Numerical Methods | |||
L 30 | Matrices | Numerical Recipes (NR) 32–36 | NR 32–36 |
L 31 | Linear Systems | NR 37–42 | NR 37–42 |
L 32 | Integration | NR 129–139 | NR 129–139 |
L 33 | Root Finding | NR 347–368 | NR 347–368 |
Data Structures | |||
L 34 | Sorting | Text: 14.1–14.3 | Text: 14.1–14.3 |
L 35 | Stacks, Queues | Text: 15.4 | Text: 15.4 |
L 36 | Lists | Text: 15.1–15.3 | Text: 15.1–15.3 |
L 37 | Storing Data: Trees, Hash Tables | Text: 16.5–16.7 | Text: 16.5–16.6 |