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