Ha MPCS 51036: Java Programming

Course Schedule Fall 2016

This schedule is subject to change. Please check back frequently.


Week Date Lecture Project Readings
Week 1 March. 27 Introduction
Course Overview
Java history
First Java Program
Java primitive (native) datatypes
Fundamental programming structures
Pseudocode
Strings
Keyboard Input
_01Control Big Java, Ch. 1-4
Week 2 April. 2 Project due date
_01Control due 11:59pm
Big Java, Ch. 5-7.3
April. 3 Object Basics
Type conversions (Integer.parseInt, etc.)
Random numbers, Basic Objects, Constructors
Methods -- static vs. non-static
Calling semantics
_02Arrays
Week 3 April. 9
Project due date
_02Arrays due 11:59pm
Big Java, Ch. 8
April. 10 Classes and Polymorphism
Exceptions
Class Instances
Upcasting/downcasting
Polymorphism
Intro to inheritance
Packages
_03Objects
Week 4 April. 16
Project due date
_03Objects due 11:59pm
Big Java, Ch. 9
April. 17 Interfaces and abstract classes
Implementation inheritance
Simple design patterns
Rules for interfaces and abstract classes
Object composition
_04Interfaces
Week 5 April. 23
Project due date
_04Interfaces due 11:59pm
Big Java, Ch. 10-11

Suggested Reading
Discussion of access privileges: public, private, protected
Oracle's good Java io tutorial
Some examples of formatted output
April. 24
Midterm Exam

Introduction to Swing and the Event Model
`` Casting Objects
The Java event Model
Reflection
Debugging
Anonymous Inner Classes
_05Dice
Week 6 April. 30
Project due date
_05Dice due 11:59pm
Big Java, Ch. 12
May. 1
Object-Oriented Analysis and Design, More Swing
Intro to Swing Java GUI Library
varargs
autoboxing
Reflection and metadata
Enumerations
Introduction to Exceptions
_06Design
Week 7 May. 7
Project due date
_06Design due 11:59pm
Big Java, Ch. 13
http://docs.oracle.com/javase/8/javafx/get-started-tutorial/get_start_apps.htm

Suggested Reading
Simple explanation of MVC
May. 8 Advanced Swing and Advanced JavaFX
More event model
Assertions
Advanced Debugger
JUnit
Robot
Serialization
_07BlackJack
Week 8 Nov. 14
Project due date
_07BlackJack due 11:59pm
Big Java, Ch. 14-17
Nov. 15 Recursion, Collections and Data Structures
Review exam
Searching and Sorting
Collections API
Data structures
Algorithms and Order-of-growth
_08Final
Week 9 May. 21
Big Java, Ch. 20
May. 22
Final Exam

Game Introduction and Review
Review of Java Game base introduction and features Build BlackJack console app in class
Week 10 May. 28
May. 29 No Class (Memorial Day Observed)
Week 11 June. 4
Final Project due date
_08Final due 11:59pm