The community college of allegheny county offers a three-course progression of java programming courses:
Instructor Eric Darsow's implementation of this course sequence is offered at CCAC's West Hills Center in the Spring of 2020.
The following table maps course session dates, lesson topics, LIANG9 references, and content links for all three Java courses in the series.
Course | SP19 Est. | Wk. | Sess. | Session description | Resources | Language objectives | Out-of-class work |
---|---|---|---|---|---|---|---|
CIT-111 | MON 27-JAN-2020 |
1 | n/a | ||||
CIT-111 | WED 29-JAN-2020 |
2 | Compiling existing source code into Java programs and tinkering with their guts; Exposure to code editing tools in NetBeans; internalizing the Java system's components and their flow | ||||
CIT-111 | MON 3-FEB-2020 |
2 | 1 | Digestion of the Java source code lifecycle: .java files --> compiler --> bytecode --> JVM (interpreter). Creatign blocks with { and } |
Java's basic grammar: Blocks, Types, variables, operators, and method calls
|
|
|
CIT-111 | WED 5-FEB-2020 |
2 | Creating projects, packages, and source files in NetBeans Copying pre-written code and tweaking text output and variable types |
||||
CIT-111 | MON 10-FEB-2020/td> | 3 | 1 |
- Right type or wrong type? Exercise - git - Introduction to branching with if() - Introduction to flow charting - Creating Might We Be Friends? Flow chart |
Branching fundamentals: block selection with if()
|
|
|
CIT-111 | WED 12-FEB-2020 |
2 | - Implementing Might We Be Friends? flow chart - Logic testing: verifying flow chart logic of peer programs | ||||
CIT-111 | MON 17-FEB-2020 |
4 | 1 | Paper compiling practice & finish our Might We Be Friends? exercise |
if() statements continued |
|
|
CIT-111 | WED 19-FEB-2020 |
2 | Finish up Might We Be Friends? and then start in on Module 4 | ||||
CIT-111 | MON 24-FEB-2020 |
5 | 1 | Counting loop time & starting module 5 |
Looping fundamentals: the while() and for() blocks |
|
|
CIT-111 | WED 26-FEB-2020 |
2 | Module 5 mini-projects: authentication etc. | ||||
CIT-111 | MON 2-MAR-2020 |
6 | 1 | Scope |
|
|
|
CIT-111 | WED 4-MAR-2020 |
2 | |||||
CIT-111 | MON 9-MARCH-2020 |
7 | 1 | Looping review exercise |
Looping, continued |
|
|
CIT-111 | WED 11-MARCH-2020 |
2 | Continue work on either 1) The quality control checker or 2) the math quiz program | ||||
CIT-111 | MON 16-MARCH-2020 |
- | - | Rescheduled "spring break" | |||
CIT-111 | WED 18-MARCH-2020 |
- | |||||
CIT-111 | MON 23-MARCH-2020 |
8 | 1 | Canceled due to COVID-19 prep |
Connect repl.it to your github
Review Methods Essentials: Empty calls and paramaterized callsIn-class exercises1: Create a file in repl.it called CarFob and copy in the raw version of our CarFob.java from our course repo 2: Create customized doors in this door game seed file called DoorGame.java |
|
|
CIT-111 | WED 25-MARCH-2020 |
2 |
MtngID: 614 961 8122 |
||||
CIT-111 | MON 30-MARCH-2020 |
9 | 1 |
MtngID: 614 961 8122 |
Fancy Methods: Calling and writing methods with return types |
|
|
CIT-111 | WED 1-APR-2020 |
2 |
MtngID: 614 961 8122 |
||||
CIT-111 | MON 6-APR-2020 |
10 | 1 |
MtngID: 614 961 8122 |
|||
CIT-111 | WED 8-APR-2020 |
2 |
MtngID: 614 961 8122 |
||||
CIT-111 | MON 13-APR-2020 |
11 | 1 |
MtngID: 614 961 8122 |
Fundamentals projectDesign and implement a novel project in Java, from scratch or building upon other students' past work Choice 1: Kennywood Ride TrackerChoice 2: Design your own project |
|
|
CIT-111 | WED 15-APR-2020 |
2 |
MtngID: 614 961 8122 |
||||
CIT-111 | MON 20-APR-2020 |
12 | 1 |
Java Object!: Creating object blueprint classes |
|
|
|
CIT-111 | WED 22-APR-2020 |
2 |
MtngID: 614 961 8122 |
||||
CIT-111 | MON 27-APR-2020 |
13 | 1 |
MtngID: 614 961 8122 |
Arrays and for() looping |
|
|
CIT-111 | WED 29-APR-2020 |
2 | |||||
CIT-111 | MON 4-MAY-2020 |
14 | 1 |
NO CLASS! |
CCAC "reading day" | ||
CIT-111 | WED 6-MAY-2020 |
2 |
MtngID: 614 961 8122 projects to share. * Same time and place as normal Wednesday class |
Sharing our culminating projects |
The following table maps course session dates, lesson topics, LIANG9 references, and content links for all three Java courses in the series.
Course | SP20 Est. | Wk. | Sess. | Session description | Resources | Learning objectives | Out-of-class work |
---|---|---|---|---|---|---|---|
CIT-130 | MON 27-JAN-20 |
1 | 1 |
Fiddling with Strings and Arrays: Review of Objects, types, classes, & methods |
|
|
|
CIT-130 | WED 29-JAN-20 |
2 | |||||
CIT-130 | MON 3-FEB-20 |
2 | 1 |
Plain old arrays to ArrayLists: Introduction to the Collection classes
|
|
|
|
CIT-130 | WED 5-FEB-2020 |
2 | First implementation of the Student class hierarchy | ||||
CIT-130 | MON 10-FEB-2020 |
3 | 1 | ||||
CIT-130 | WED 12-FEB-2020 |
2 | |||||
CIT-130 | MON 17-FEB-2020 |
4 | 1 |
Inheritance Pt.1: Create a class hierarchy (a tree) by giving a class a parent with extendsInheritance Pt.2: Modeling computer timelinesCreate a Java-based representation of the computer history timeline hanging in the hall outside of S21133 |
|
|
|
CIT-130 | WED 19-FEB-2020 |
2 | Print and include in your folder your Student[] array class | ||||
CIT-130 | MON 24-FEB-2020 |
5 | 1 |
Create a Java-based representation of the computer history timeline hanging in the hall outside of S21133 |
|
|
|
CIT-130 | WED 26-FEB-2020 |
2 | Worktime on timeline modeling | ||||
CIT-130 | MON 2-MAR-2020 |
6 | 1 | Begin API project |
Inheritance & Collections project design; software engineering techniques |
|
|
CIT-130 | WED 4-MAR-2020 |
2 | |||||
CIT-130 | MON 9-MAR-2020 |
7 | 1 |
Inheritance & Collection: Map-based data structures |
|
|
|
CIT-130 | WED 11-MAR-2020 |
2 | Sharing inheritance & Collection projects | ||||
CIT-130 | MON 16-MAR-2020 |
- | - | No class: rescheduled "spring break" | |||
CIT-130 | WED 18-MAR-2020 |
- | |||||
CIT-130 | MON 23-MAR-2020 |
8 | 1 | Session canceled due to COVID-19 prep | |||
CIT-130 | WED 25-MAR-2020 |
2 |
MtngID: 614 961 8122 |
GUIs with SwingDesign Notes
|
|||
CIT-130 | MON 30-MAR-2020 |
9 | 1 |
MtngID: 614 961 8122 |
Session 1 (Monday): Group check-in on GUI projectSign in on Monday with a draft program of some functionality related to your project so we can share progress, ask questions, and learn about the fine art of Swing together. |
|
|
CIT-130 | WED 1-APR-2020 |
2 |
MtngID: 614 961 8122 |
||||
CIT-130 | MON 6-APR-2020 |
10 | 1 |
MtngID: 614 961 8122 |
Design patterns: Model-View-controller structures |
||
CIT-130 | WED 8-APR-2020 |
2 |
MtngID: 614 961 8122 |
||||
CIT-130 | MON 13-APR-2020 |
11 | 1 |
MtngID: 614 961 8122 |
GUI & Inheritance project workshop |
|
|
CIT-130 | WED 15-APR-2020 |
2 |
MtngID: 614 961 8122 |
||||
CIT-130 | MON 20-APR-2020 |
12 | 1 |
MtngID: 614 961 8122 |
GUI & Inheritance project workshop |
|
|
CIT-130 | WED 22-APR-2020 |
2 |
MtngID: 614 961 8122 |
||||
CIT-130 | MON 27-APR-2020 |
13 | 1 |
MtngID: 614 961 8122 |
Exceptional term projects: design and workshop time |
|
|
CIT-130 | WED 29-APR-2020 |
2 |
Screencast of Git Workflow co-creation |
||||
CIT-130 | WED 6-MAY-2020 |
14 | 1 |
MtngID: 614 961 8122
* Bring fully-baked |
Sharing term projects and final checkout |
|
|
The following table maps course session dates, lesson topics, LIANG9 references, and content links for all three Java courses in the series.
Course | SP19 Est. | Wk. | Sess. | Session description | Module links | Language objectives | Out-of-class work |
---|---|---|---|---|---|---|---|
CIT-244 | 1 | 1 |
String manipulation and array review
|
LIANG9 Textbook:
Chapter 6: Arrays Chapter 9: Strings |
|
||
CIT-244 | WED 4-SEP` |
2 | |||||
CIT-244 | MON 9-SEP-19 |
2 | 1 |
Inheritance revisited: Teasing apart use cases for plain inheritance, abstract methods, and interfaces
|
LIANG9 Textbook:
Chapter 15: 15.1 - 15.8 |
|
|
CIT-244 | WED 11-SEP-19 |
2 | |||||
CIT-244 | MON 16-SEP-19 |
3 | 1 |
Exploring constructors and interfaces with a Comparable Computer object
|
LIANG9 Textbook:
Chapter 11: Inheritance and polymorphism Chapter 15: Abstract classes and interfaces |
|
|
CIT-244 | WED 18-SEP-19 |
2 | 18-FEB-19|||||
CIT-244 | MON 23-SEP-19 |
4 | 1 | Planning vehicle inheritance |
Inheritance Practice: Modeling computer timelines and file I/O |
|
|
CIT-244 | WED 25-SEP-19 |
2 | |||||
CIT-244 | MON 30-SEP-19 |
5 | 1 | Creating class diagrams for Timeline project |
Data store API project design and workshop timeConnecting Java applications and the file system: Introducing file I/O
|
|
|
CIT-244 | WED 2-OCT-19 |
2 | Implement file I/O with text-based UI for timeline project | ||||
CIT-244 | MON 7-OCT-19 |
6 | 1 |
Finishing car crash module |
LIANG9 Textbook:
|
|
|
CIT-244 | WED 9-OCT-19 |
2 | Building new functionality with minimal changes: All Hail the MVC design framework | ||||
CIT-244 | MON 14-OCT-19 |
7 | 1 | Return to GUIs with Hashing! |
Project specsGUI Resources |
|
|
CIT-244 | WED 16-OCT-19 |
2 | Continued GUI migration and event handling | ||||
CIT-244 | MON 21-OCT-19 |
8 | 1 | Inner class worksheet and review of Listener methods |
|
|
|
CIT-244 | WED 23-OCT-19 |
2 | |||||
CIT-244 | MON 28-OCT-19 |
9 | 1 | Asymmetric key cryptography |
Diffie & Hellman |
|
|
CIT-244 | WED 30-OCT-19 |
2 | Hashing | ||||
CIT-244 | MON 4-NOV-19 |
10 | 1 | Hashing and cryptography |
Cryptography continued |
|
|
CIT-244 | WED 6-NOV-19 |
2 | Continued work on Hashing project | ||||
CIT-244 | MON 11-NOV-19 |
11 | 1 | Sorting metrics continued |
|
|
|
CIT-244 | WED 13-NOV-19 |
2 | |||||
CIT-244 | MON 18-NOV-19 |
12 | 1 |
Encryption ContinuedTODOs
|
|
||
CIT-244 | WED 20-NOV-19 |
2 | Share encryption projects | ||||
CIT-244 | MON 25-NOV-19 |
- | - | ||||
CIT-244 | WED 27-NOV-19 |
- | |||||
CIT-244 | MON 2-DEC-19 |
13 | 1 |
SortingProject wrap-up TODO
|
|
||
CIT-244 | WED 4-DEC-19 |
2 | Continue sorting final projects | ||||
CIT-244 | MON 9-DEC-19 |
1 | 1 |
Final sorting project prep |
|||
CIT-244 | WED 11-DEC-19 |
14 | 2 |
* Bring fully-baked projects to share. * Same time and place as normal Wednesday class |
Sharing final sorting projects |
|
|