| Week |
Session |
Reading |
HW Due |
Topics |
Resources |
Programs |
| 1 |
1
Mon Mar 4
Details
|
|
- Nothing due today. See top of page for times that parts of the daily assignments are normally due.
- 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
- Variables. Using and constructing objects. Calling methods, accessor and mutator methods.
- The String class
- Primitive Types
- UML Class Diagram for a single class
|
|
|
|
| 1 |
2
Wed Mar 6
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
|
|
- Java API documentation
- 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 |
3
Fri Mar 8
Details
|
|
|
|
|
WordGames
|
|
| 2 |
4
Mon Mar 11
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)
- Big Java, Ch. 4 1) Associated reading quiz due Friday. 2) This is long, but §4.1–5 should be review. Read §4.6–7 on Strings and Reading Input carefully.
|
|
- 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
- More fundamental data types
|
|
WordGames
|
Faces
|
| 2 |
5
Wed Mar 13
Details
|
|
|
- Strings
- Constants
- Reading console input
- More text formatting
-
if statements
-
== and equals()
- Selection operator
-
switch statements and enumerated types
- Test coverage
|
|
Faces
|
|
| 2 |
6
Fri Mar 15
Details
|
|
- Reading Assignment for Chapter 4
|
|
|
Faces
|
|
| 3 |
7
Mon Mar 18
Details
|
- Big Java, Ch. 6 This should be review
- Big Java, §7.1–7.6 (7.1-5 in ed3)
|
|
-
while and for loops
- Debugging
- Arrays
- ArrayLists
|
|
Faces
|
|
| 3 |
8
Wed Mar 20
Details
|
|
- HW 5a
- Reading Assessment on Big Java, Ch. 6 This should be review
|
- Wrapper classes and auto-boxing
- Enhanced
for loop
- Two-dimensional arrays
- Copying arrays (shallow copies)
- Software engineering techniques:
- pair programming
- version control
|
|
Conway’s Game of Life
|
|
| 3 |
9
Fri Mar 22
Details
|
|
- HW 5b
- Reading assessment on Big Java, §7.1–7.6 (7.1-5 in ed3)
|
|
|
Conway’s Game of Life
|
|
| 4 |
10
Mon Mar 25
Details
|
|
- HW 6
- Reading assessment on Big Java, §7.7–7.8 (7.6-8 in ed3)
|
- Game of Life
- Cohesion and Coupling
- Immutable classes
- Side effects
- UML class diagrams, relationships
- Static fields and methods
|
|
|
|
| 4 |
11
Wed Mar 27
Details
|
- Review for Exam 1 over topics in Big Java, Chapters 1–7
|
|
- Exam today!!
- Exam 1
Normal class period
|
| |
|
| 4 |
12
Fri Mar 29
Details
|
|
|
|
| |
|
| 5 |
13
Mon Apr 8
Details
|
- Big Java, §9.1–9.6 (9.1-9.5 in ed3)
- Big Java, §9.7–9.11 (9.6-9.10 in ed3)
|
|
- Scope
- Packages
- Interfaces and polymorphism
- Listeners, callbacks, and inner classes
- Swing containers, Layout Managers
- Event-based programming
|
|
BigRational
|
|
| 5 |
14
Wed Apr 10
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
|
|
- Buttons and other Swing objects
- Inheritance
- Polymorphism
- Access control
|
|
BigRational
|
|
| 5 |
15
Fri Apr 12
Details
|
|
- EventBasedProgramming project of HW 10a
|
|
|
BigRational
|
|
| 6 |
16
Mon Apr 15
Details
|
- Big Java, §10.7–10.8 (10.8-10.11 in ed 3). Skip anything about clone().
- Big Java, Ch. 12
|
- BigRational of HW 10a
- HW 10b
- Team preference Survey on ANGEL due Monday at noon.
|
-
Object
- Polymorphism
- Object-oriented design
|
|
BallWorlds
|
|
| 6 |
17
Wed Apr 17
Details
|
|
|
- Case-study
- File I/O
- Exception handling
- Team Roles
|
|
BallWorlds
|
|
| 6 |
18
Fri Apr 19
Details
|
|
|
|
|
BallWorlds
|
|
| 7 |
19
Mon Apr 22
Details
|
- Big Java, §20.1–§20.3
- Big Java, §13.1–13.2 (13.1,13.3 in ed 3)
|
|
- Multithreading
- Recursion
- Recursive helper methods
|
|
LodeRunnersee spec. for deliverable due dates
|
|
| 7 |
20
Wed Apr 24
Details
|
- Review for Exam 2 over topics in Big Java Ch. 1–§14
|
|
- Exam today!!!
- Exam 2
Normal class period
|
|
LodeRunnersee spec. for deliverable due dates
|
|
| 7 |
21
Fri Apr 26
Details
|
|
|
|
|
LodeRunnersee spec. for deliverable due dates
|
|
| 8 |
22
Mon Apr 29
Details
|
- Big Java, §13.3–13.5 (13.2,13.4-5 in ed3)
- Big Java, §14.1–§14.3
- Big Java, §14.4–§14.8
- Selection Sort
|
|
- Recursion and efficiency
- Mutual recursion
- Sorting
- Algorithm analysis
|
|
LodeRunnersee spec. for deliverable due dates
|
|
| 8 |
23
Wed May 1
Details
|
|
|
- Sorting
- Algorithm analysis
- Another recursion example (Combination generation)
- Merge sort recap
- Intro. to function objects,
Comparable
- Intro. to Fork-Join
|
|
LodeRunnersee spec. for deliverable due dates
|
|
| 8 |
24
Fri May 3
Details
|
|
|
|
|
LodeRunnersee spec. for deliverable due dates
|
|
| 9 |
25
Mon May 6
Details
|
|
|
- Function objects revisited
- Search algorithms
- Strategy design pattern: pluggable algorithms
- Intro. to linked lists
- Linked list implementation
|
|
LodeRunnersee spec. for deliverable due dates
|
|
| 9 |
26
Wed May 8
Details
|
|
|
|
|
LodeRunnersee spec. for deliverable due dates
|
|
| 9 |
27
Fri May 10
Details
|
|
|
|
|
LodeRunnersee spec. for deliverable due dates
|
|
| 10 |
28
Mon May 13
Details
|
- Big Java, §16.1–16.4 (skim sections 3 and 4)
|
|
- Data-structure-palooza: stacks, queues, sets, and maps
- Abstract data types
- Generics
- Exam review
- Course evaluations
- LodeRunner work time
|
|
LodeRunnersee spec. for deliverable due dates
|
|
| 10 |
29
Wed May 15
Details
|
- Big Java, Ch. 17 (skim)
- No ANGEL quiz over this reading
|
|
- Project presentations
In Class
|
|
LodeRunnersee spec. for deliverable due dates
|
|
| 10 |
30
Fri May 17
Details
|
|
- Team Performance Evalutions Friday
|
|
| |
|
| 11 |
31
Mon May 20
Details
|
|
|
- Final Exam, Wednesday, May 22. 1:00 to 5:00 PM
in O257 (sect 1), O259 (2)
|
|
|
|