Week |
Session |
Reading |
HW Due |
Topics |
Resources |
Programs |
0 |
1
Thu Aug 30
Details
|
|
- Unless specified otherwise, all Homework, except programming assignments, will be due at the beginning of class.
- Unless specified otherwise, Programming Assignments are due by 11:59 PM on their due dates.
- Lab assistant schedule (F-217)
|
- Brief course introduction
- Getting started with Java (printing, defining and calling static methods, declaring variables, looping, the summing loop pattern)
- Eclipse and Subclipse (running a program, checking out and committing a project)
- Javadoc comments
|
|
|
|
1 |
2
Mon Sep 3
Details
|
- Big Java Chapter 1 (just skim §1.1–1.2 and 1.6 (1.5 in ed3), read the rest)
- Big Java, §2.1–2.7
|
|
- Variables. Using and constructing objects. Calling methods, accessor and mutator methods.
- The String class
- Primitive types
- UML Class Diagram for a single class
- Java API documentation
|
|
|
|
1 |
3
Tue Sep 4
Details
|
- Big Java, §2.8–2.10
- First two pages of this intro to UML Class Diagrams
- Big Java, §3.1–3.8, Pay particular attention to §3.8
|
|
- Unit tests with JUnit
- Object references
- Object-Oriented Encapsulation
- Implementing Classes in Java
- Fields, Constructors, Methods
- Implementing an Interface
- Documented Stubs
- Test-first Programming, JUnit tests
|
|
WordGames
|
|
1 |
4
Thu Sep 6
Details
|
- Big Java, §2.11–2.13
- Big Java, §3.9 and Summary of Learning Objectives at the end of ch 3 ("Chapter Summary" in ed3)
|
|
- Reviewing Grader Comments in Eclipse
- Implementing Classes in Java
- Introduction to Java GUIs
- Swing: JFrame, JComponent, how to draw Shapes in a JComponent
- Shape classes
|
|
WordGames
|
Faces
|
2 |
5
Mon Sep 10
Details
|
- Big Java, Ch. 4 This is long, but §4.1–5 should be review. Read §4.6–7 on Strings and Reading Input carefully.
|
|
- More fundamental data types
- Strings
- Constants
|
|
Faces
|
|
2 |
6
Tue Sep 11
Details
|
|
|
- Reading console input
- More text formatting
-
if statements
-
== and equals()
- Selection operator
-
switch statements and enumerated types
- Test coverage
|
|
|
|
2 |
7
Thu Sep 13
Details
|
- Big Java, Ch. 6 This should be review
|
|
-
while and for loops
- Debugging
|
|
|
|
3 |
8
Mon Sep 17
Details
|
- Big Java, §7.1–7.6 (7.1-5 in ed3)
|
|
- Arrays
- ArrayLists
- Wrapper classes and auto-boxing
- Enhanced
for loop
|
|
|
|
3 |
9
Tue Sep 18
Details
|
- Big Java, §7.7–7.8 (7.6-8 in ed3)
|
|
- Two-dimensional arrays
- Copying arrays (shallow copies)
- Software engineering techniques:
- regression testing
- pair programming
- version control
|
|
Conway’s Game of Life
|
|
3 |
10
Thu Sep 20
Details
|
|
|
|
|
Conway’s Game of Life
|
|
4 |
11
Mon Sep 24
Details
|
- Big Java, §13.1–13.2 (13.1,13.3 in ed 3)
|
|
- Recursion
- Recursive helper methods
|
|
Conway’s Game of Life
|
|
4 |
12
Tue Sep 25
Details
|
- Big Java, §13.3–13.5 (13.2,13.4-5 in ed3)
- Big Java, §14.1–§14.3
- Selection Sort
|
|
- Sierpiński Triangle
- Recursion and efficiency
- Mutual recursion
- Exam Review – bring your questions
|
|
Sierpiński Triangle
|
|
4 |
13
Thu Sep 27
Details
|
|
|
- Sorting
- Algorithm analysis
|
|
|
|
5 |
14
Mon Oct 1
Details
|
|
|
- Another recursion example (Combination generation)
- Merge sort recap
- Intro. to function objects,
Comparable
- Intro. to Fork-Join
|
|
|
|
5 |
15
Tue Oct 2
Details
|
- Review for Exam 1 over topics in Big Java, Chapters 1–7
|
|
- Cohesion and Coupling
- Immutable classes
- Side effects
- UML class diagrams, relationships
- Static fields and methods
- Exam 1
7:00-9:00 PM Section 1 Venue: O 259
|
|
|
|
5 |
16
Thu Oct 4
Details
|
|
|
- No regular class meeting
because of last tuesday's exam and Delvin will be at FIE conference
|
|
|
|
6 |
17
Mon Oct 8
Details
|
- Big Java, §9.1–9.6 (9.1-9.5 in ed3)
|
|
- Scope
- Packages
- Interfaces and polymorphism
|
|
BigRational
|
|
6 |
18
Tue Oct 9
Details
|
- Big Java, §9.7–9.11 (9.6-9.10 in ed3)
|
|
- Swing containers, Layout Managers
- Event-based programming
- Listeners, callbacks, and inner classes
- Buttons and other Swing objects
|
|
BigRational
|
|
7 |
19
Mon Oct 15
Details
|
- Big Java, §10.1–10.6 (10.1-10.7 in ed3)
- Be sure to read Special Topic 10.1—Abstract Classes on p. 437
- Skim the remainder of UML Class Diagrams intro
|
|
- Inheritance
- Polymorphism
- Access control
|
|
|
|
7 |
20
Tue Oct 16
Details
|
- Big Java, §10.7–10.8 (10.8-10.11 in ed 3). Skip anything about clone().
|
- HW 19
- Team preference Survey on ANGEL due Monday at noon.
|
|
|
BallWorlds
|
|
7 |
21
Thu Oct 18
Details
|
|
|
- Object-oriented design
- Case-study
|
|
BallWorlds
|
|
8 |
22
Mon Oct 22
Details
|
- Review for Exam 2 over topics in Big Java Ch. 1–§14
|
|
- Exam 2
7:00-9:00 PM Section 1: O259 No regular class meeting today
|
|
|
|
8 |
23
Tue Oct 23
Details
|
|
|
- File I/O
- Exception handling
- Team Roles
|
|
LodeRunnersee spec. for deliverable due dates
|
|
8 |
24
Thu Oct 25
Details
|
|
|
|
|
LodeRunnersee spec. for deliverable due dates
|
|
9 |
25
Mon Oct 29
Details
|
|
|
- Function objects revisited
- Search algorithms
- Strategy design pattern: pluggable algorithms
|
|
LodeRunnersee spec. for deliverable due dates
|
|
9 |
26
Tue Oct 30
Details
|
|
|
- Intro. to linked lists
- Linked list implementation
|
|
LodeRunnersee spec. for deliverable due dates
|
|
9 |
27
Thu Nov 1
Details
|
|
|
|
|
LodeRunnersee spec. for deliverable due dates
|
|
10 |
28
Mon Nov 5
Details
|
- Big Java, §16.1–16.4 (skim sections 3 and 4)
|
|
- Data-structure-palooza: stacks, queues, sets, and maps
- Abstract data types
- Course evaluations
- LodeRunner work time
|
|
LodeRunnersee spec. for deliverable due dates
|
|
10 |
29
Tue Nov 6
Details
|
|
|
- Generics
- Exam review
- LodeRunner work time
|
|
LodeRunnersee spec. for deliverable due dates
|
|
10 |
30
Thu Nov 8
Details
|
- Big Java, Ch. 17 (skim)
- No ANGEL quiz over this reading
|
- HW 29
- Team Performance Evalutions Friday, Nov 9, 2012
|
- Project presentations
In Class
|
|
|
|
11 |
31
Mon Nov 12
Details
|
|
|
- Final Exam, Tuesday, Nov 13. 1:00 to 5:00 PM
in G313
|
|
|
|