Topics (Days) |
Textbook Readings |
Online Notes |
Online Lectures |
Course and Java Introduction (1) |
Scott Ch 1.1-1.3 |
- C++ versus Java
- Java Basics
|
You only need to view these if you missed the in-class lecture
- JavaVsC++
- Lecture-1-9-Introduction
|
Java Basics (2)
- Java's Memory Management Model
- Java's Runtime System
- Types, Variables, and Classes in Java
|
- Scott 3.1-3.5 -- Names, Scopes, and Bindings
- Scott 6.5-6.5.3 -- Loops
- Scott 8.3 -- Parameter Passing
|
- C++ versus Java
- Java Basics
- Jar Files
optional:
- Introductory
Java Tutorial. Skip the link to "The Java Technology Phenomenon"
unless you want to be bored out of your mind. The "Hello World"
Application is good because it tells you how to download NetBeans
and run a sample application.
- Language
Basics. Any of the tutorials are good except for the one on
Generics, which we will cover later in the course.
|
Also review parameter passing at the bottom of the Java Basics notes. They
are pretty basic so there is no lecture over them.
Tues 1/14
- YourFirstJavaProgram (6:45)
- VariablesTypesCoping (6:42)
- Strings (4:27)
- Arrays (9:36)
- Classes (19:43)
Thurs 1/16: Enumerated Types (15:02)
|
Java I/O (1)
| none |
- Brad's Cliff Notes
- Java I/O-- pay particular attention to Java's Scanner class
|
- ConsoleInput (16:02)
- ConsoleOutput (8:37)
- FileIO (13:58)
|
Java Collections Library (1)
| None
| Collections Tutorial
| Collections (30:25)
|
Inheritance (3)
| Scott: Chapter 9
|
- Java's Inheritance System
- Different Types of Inheritance in Other Languages
- Implementation Issues
- Java's Interface/Inheritance Tutorial
|
Tues. 1/28: Inheritance (43:03)
Thurs. 1/30
- Java Inheritance (18:33)
- Interfaces (12:47)
Tues. 2/4
- C++-Classes-Inheritance (24:50)
- Multiple-Mixin-Inheritance-Composition (25:51)
- Inheritance Implementation (16:10)
|
Module Mechanisms (1)
| Scott 3.3.4-3.3.5 -- Modules and Module Classes
|
- Modules in C and C++
- Java Modules (Packages)
- Sun's Java Package Tutorial
|
Thurs. 2/6
- Modules-C-C++ (18:37)
- Packages-Java (20:06)
|
Polymorphism, Generic Functions and Data Structures (2) |
- Scott 3.5.3, 7.1.2 -- Polymorphism
- Scott 8.4 -- Generic Subroutines and Modules
|
- Generics in C, C++, and Java
- Tutorial on Java Generics
- Example search using Java's generic data structures
|
Tues. 2/11
- Generics C (4:11)
- Generics C++ (18:42)
Thurs. 2/13
Generics Java (32:02)
|
Exception Handling (2) |
Scott: 8.5 -- Exception Handling |
- Exception Handling
- Exception Handling Tutorial
|
Tues. Feb. 18
- C++ Exception Handling (20:44)
- Exception Handling C++ SafeArray Example (17:31)
Thurs. Feb. 20
- Java Exception Handling (27:05)
- C Exception Handling Watch from 29:45-1:02:50
|
Intro to Event-Based Programming |
Scott: 8.7 -- Events |
- Overview of GUI's and Event Handling
- Java GUI overview
- Java Swing
- HelloWorld program with marked regions
|
Tues. Feb. 25: EventProgramming (34:15)
|
Layout algorithms for widgets (1) |
none |
Java Layout Managers |
Layout Managers |
Widgets and Message Dialogs (1) |
none |
- widgets
- Java Swing Components
|
Widgets (1:05-51:40): This video should be fine on iTunesU but on YouTube
it may have audio/video synch problems
|
The MVC Model (1) |
none |
- Setting up an MVC Application
- Sample Code for an MVC Application
|
MVC (27:39)
|
Custom Painting and Event Handling (1) |
none |
Custom Painting |
Custom Graphics
|
Names, Scopes, and Binding (1) |
Scott: 3.1-3.3, 3.5, 3.6 |
names, scopes, and bindings |
Names, Scopes, and Bindings |
Data Types and Type Checking (2)
| Scott: 7.1-7.2, 7.4, 7.7
|
- types
|
Garbage Collection
Thurs. 3/27: Type Sytems
Tues. 4/1
- Types-Records-Arrays-Pointers
- Garbage Collection
|
Functional Languages (4)
| Scott--10, 6.6
|
- functional programming
- scheme
- other functional issues
|
- Thurs 4/3: Functional Language Intro
- Tues 4/8:
- Thurs 4/10: Functional-Languages-Evaluation-Order
- Tues 4/15: Functional-Languges-Higher-Order-Functions
|
Concurrency (3)
| Scott--12
|
- Concurrency in Java
- Java Sockets
|
|