CSE 2221 – Schedule


The assignments shown in the row for a given class meeting should be done before that class meeting: read the readings, complete the homework assignment (to be submitted via Carmen in PDF format before the start of class) and/or the project assignment (to be submitted via Carmen at least one hour before the start of class). In addition, you should look over the slides for that meeting and prepare to ask any questions about them, and you should complete the previous lab instructions, if you haven't yet.

Meeting Date Topics Assignments Extras
1 Tue
Jan 9
Course Introduction
lecture slides
2 Wed
Jan 10
Configuring Eclipse
lab instructions
3 Thu
Jan 11
Java Overview: Compiler and Virtual Machine
Output, Strings, Input
reading assignmenthomework assignment lecture slides
4 Fri
Jan 12
Exercises Using Eclipse: Input-Output and Strings
reading assignment lab instructions
5 Tue
Jan 16
Variables, Types, Values
Operators, Expressions, Statements, Control Flow
reading assignmentproject assignment lecture slides
6 Wed
Jan 17
Numeric Computation Involving Loops: Monte Carlo Estimation
reading assignmenthomework assignment lecture slideslab instructions
7 Thu
Jan 18
While Loops
Static Methods
reading assignmenthomework assignment lecture slides
8 Fri
Jan 19
Hailstone Series
lab instructions
9 Tue
Jan 23
Parameter Passing
Arrays
reading assignmenthomework assignment lecture slides
10 Wed
Jan 24
Making Change
lab instructions
11 Thu
Jan 25
Design-by-Contract
project assignment lecture slides
12 Fri
Jan 26
Password Checker
lab instructions
13 Tue
Jan 30
Trees
XML Documents
XMLTree Client View: Model
homework assignment lecture slides
14 Wed
Jan 31
XMLTree Model Exploration
lab instructions
15 Thu
Feb 1
XMLTree Client View: Methods (and Constructors)
reading assignmenthomework assignment lecture slides
16 Fri
Feb 2
XMLTree Method Exploration
project assignment lab instructions
17 Tue
Feb 6
RSS: Really Simple Syndication
homework assignment lecture slides
18 Wed
Feb 7
XMLTree RSS Processing
lab instructions
19 Thu
Feb 8
Midterm Exam #1
20 Fri
Feb 9
Debugging
reading assignment lecture slideslab instructions
21 Tue
Feb 13
NaturalNumber: Formal Contract Specification
reading assignmenthomework assignment lecture slides
22 Wed
Feb 14
Hailstone Series with NaturalNumber
project assignment lab instructions
23 Thu
Feb 15
References
lecture slides
24 Fri
Feb 16
Tracing Parameter Passing
homework assignment lab instructions
25 Tue
Feb 20
Arrays and References
Contracts
Repeated Arguments
homework assignment lecture slides
26 Wed
Feb 21
Interval Halving/Binary Search: Computing Roots
homework assignment lecture slideslab instructions
27 Thu
Feb 22
Mathematical String Notation
Recursion: Thinking About It
reading assignment lecture slides
28 Fri
Feb 23
Recursion on NaturalNumber: static methods decrement, printWithCommas
project assignment lab instructions
29 Tue
Feb 27
References Revisited
Recursion Revisited
lecture slides
30 Wed
Feb 28
Arrays and References
lab instructions
31 Thu
Feb 29
Concepts of Object-Oriented Programming
lecture slides
32 Fri
Mar 1
Recursion on NaturalNumber: instance methods subtract, power
project assignment lecture slideslab instructions
33 Tue
Mar 5
Recursion: Why It Works
Recursion on Trees
homework assignment lecture slides
34 Wed
Mar 6
Recursion on XMLTree
lab instructions
35 Thu
Mar 7
Testing
JUnit
homework assignment lecture slides
36 Fri
Mar 8
Using JUnit
lab instructions
Tue
Mar 12
No classes
Wed
Mar 13
No classes
Thu
Mar 14
No classes
Fri
Mar 15
No classes
37 Tue
Mar 19
Midterm Exam #2
38 Wed
Mar 20
Testing With JUnit
homework assignmentproject assignment lab instructions
39 Thu
Mar 21
Generics
Queue: Formal Contract Specification
lecture slides
40 Fri
Mar 22
Cryptographic Utilities
homework assignment lab instructions
41 Tue
Mar 26
Mathematical Set Notation
Set: Formal Contract Specification
Iterators
homework assignment lecture slides
42 Wed
Mar 27
Set: secondary methods add, remove
lab instructions
43 Thu
Mar 28
Application: Genome Reassembly from Fragments
Sequence: Formal Contract Specification
Comparators
homework assignmentproject assignment lecture slides
44 Fri
Mar 29
Queue: secondary method sort
homework assignment lab instructions
45 Tue
Apr 2
Stack: Formal Contract Specification
Recursion: How It Works
lecture slides
46 Wed
Apr 3
String: static methods nextWordOrSeparator, generateElements
homework assignment lab instructions
47 Thu
Apr 4
Map: Formal Contract Specification
homework assignmentproject assignment lecture slides
48 Fri
Apr 5
Map: Processing Pizza Orders
homework assignment lab instructions
49 Tue
Apr 9
Graphical User Interfaces Using Swing
Observer Design Pattern
lecture slides
50 Wed
Apr 10
Performance Experiments
lab instructions
51 Thu
Apr 11
Model-View-Controller Design Pattern
lecture slides
52 Fri
Apr 12
Constructor for a View Class in MVC
project assignment lecture slideslab instructions
53 Tue
Apr 16
Loop Invariants I
lecture slides
54 Wed
Apr 17
Unlimited Undo Facility
homework assignment lab instructions
55 Thu
Apr 18
Loop Invariants II
lecture slides
56 Fri
Apr 19
Review
project assignment