CS 2334 Programming Structures and Abstractions Class schedule

The following is a schedule of the lectures and presentations for CS 2334 Programming Structures and Abstractions for Spring 2013. This schedule will be updated throughout the semester. All readings are from Zyante's Programming in Java unless otherwise noted.

Date Topic Assigned Reading Assigned Due
Week 1
Aug 18 Introduction, Visit from Academic Integrity Office      
Aug 20 Review of 1323      
Aug 21 (lab) Lab 1: JDK, Compiling, Javadoc, Integrated Development Environments (Eclipse), Strings   Lab 1 Lab 1
Week 2
Aug 25
UML, Abstraction, Objects, Encapsulation
Chapter 7 (7.1-7.2)    
Aug 27 Object-Oriented Design 7.3-7.5    
Aug 28 (lab) Lab 2: Unit Tests 7.6 Lab 2 Lab 2
Week 3
Sep 1
Labor Day (no class)
Sep 3 OOP, File handling Chapter 9    
Sep 4 (lab) Lab 3: Reading and writing text with Files   Project 1: reading in from files Lab 3
Week 4
Sep 8 Inheritance and Polymorphism Chapter 10    
Sep 10 Inheritance and Polymoprhism, Exceptions Chapter 13    
Sep 11(lab) Lab 4: Inheritance and Polymorphism   Lab 4 Lab 4
Week 5
Sep 15 Exceptions, Abstract Classes Chapter 11    
Sep 17 Abstract classes and Interfaces   Project 1
Sep 18 (lab) Lab 5: Exceptions     Lab 5
Week 6
Sep 22 Interfaces, Midterm Review 1   Project 2: user input, output, exceptions, hierarchies, interfaces  
Sep 24 Generics Chapter 14    
Sep 25 (lab) Lab 6: Abstract classes and Interfaces     Lab 6
Week 7
Sep 29 Midterm 1      
Oct 1 Lists and Java Collections Framework (JCF), Queues and Priority Queues and Stacks Chapter 16    
Oct 2 (lab) Lab 7: Generics and Lists and Queues     Lab 7
Week 8
Oct 6 Queues and Priority Queues and Stacks, Sets and Maps      
Oct 8 Sets and Maps and Enum     Project 2
Oct 9 (lab) Lab 8: HashMaps and Enums, handing out Project 3: Java Collections Framework     Lab 8
Week 9
Oct 13 Introduction to GUI, GUI Basics Chapter 15 Project 3: Java Collections Framework  
Oct 15 GUI Basics and Simple Events      
Oct 16 (lab) Lab 9: GUI Basics     Lab 9
Week 10
Oct 20 Graphics      
Oct 22 Graphics and Midterm review      
Oct 23 (lab) Lab 10: Graphics (drawing shapes)     Lab 10
Week 11
Oct 27 Midterm 2   Project 4: Basic GUI  
Oct 29 Event Driven Programming, Other GUI Components  
Project 3
Oct 30 (lab) Lab 11: Event Driven Graphics    
Lab 11
Week 12
Nov 3 Other GUI Components, Binary File I/O      
Nov 5 Binary File I/O      
Nov 6 (lab) Lab 12: Binary file I/O     Lab 12
Week 13
Nov 10 Recursion Chapter 12 Project 5: Advanced GUI Project 4
Nov 12 Catch up, Tying it all together      
Nov 13 (lab) Lab 13: Recursion     Lab 13
Week 14
Nov 17 Snow day      
Nov 19 Ethics: ethical theories Ethics book Chapter 1.4    
Nov 20 (lab)

Lab 14: Ethics

  Ethics Lab 1 Ethics Lab 1 (Lab 14)
Week 15
Nov 24 Ethics: Privacy Ethics book Chapter 2   Project 5 (due Nov 30)
Nov 26-Nov 30
Thanksgiving break
Week 16
Dec 1 Ethics: Intellectual Property Ethics book Chapter 4    
Dec 3 Final Exam Review      
Dec 4 (lab) Lab 15: Ethics   Ethics Lab 2 Ethics Lab 2 (Lab 15)
 
Dec 10
Final exam 8:00-10:00am