| 1 |
Lab 1 |
Sep 2,5,8
Readings
Arnold's Lecture Files
References
|
| 2 |
Lab 2 |
Sep 9,12,15
Readings
Arnold's Lecture Files
Marc's Lecture Files
Reference
|
| 3 |
Lab 3 |
Sep 16,19,22
Readings
Arnold's Lecture Files
Notes and
w03.zip as an IntelliJ Project. You should OPEN this project, not import etc. in IntelliJ.
Marc's Lecture Files
w03_101.zip Unzip, and you should OPEN w03 subfolder as IntelliJ project, NOT import.
References
|
| 4 |
Lab 4 |
Sep 23,26,29
Readings
Arnold's Lecture Files
- w04.zip as an IntelliJ project
- w04new.zip as an IntelliJ project. Inheritance, Abstract, and Interfaces re-done with shapes.
Marc's Lecture Files
- w04_101.zip Upzip, and then w04 sub-folder can be opened in IntellilJ
Reference
|
| 5 |
Lab 5 |
Sep 30, Oct 3, Oct 6
Readings
Arnold's Lecture Files
Generics: w04.zip as an IntelliJ project (see generics package)
GUI Programming: gui.zip as an IntelliJ project
- The JavaFX Tutorial
- javafx: Application, Stage, Scene
(from the JavaFX tutorial)
- logical layout VBox, HBox, Grid, Border
- a walk through of
JAVAFX and Buttons, the hierarchy that Buttons are a part of and
- how to create an event handler by implementing the required interface. In HiBye
We handled ButtonClicks by defining HiByeEventHandler and then registering it with
the Button.
- The lifecycle of an event, so...
- Button is clicked
- Button creates an ActionEvent instance event
- Button calls all event handlers registered, calling handle(event)
- Event handler does its job
-
Examples from gui.zip
- GUI Programming, layouts: LayoutVH, LayoutGrid, LayoutComplex
- Event Driven programming, HiBye and HiByeEventHandler, HiByeMouseHandler
Marc's Lecture Files
- w05_101.zip Upzip, and then w05 sub-folder can be opened in IntellilJ
Reference
References
|
| 6 |
Lab 6 |
Oct 6, Oct 7, Oct 10
Readings
Arnold's Lecture Files
Summary:
1) Scrum
2) design patterns:
observer/observable
3) MVC
Marc's Lecture Files
- w05_101.zip W6 material was posted in W5 package
- Note that due to Labour Day, we compressed 6 weeks of material in 5 weeks of lectures.
Reference
Design patterns
- Effective use of the OO Paradigm. Using the patterns results in flexible, malleable, maintainable code. It usually allows plug and play additions to existing code. It is like a good algorithms book is to procedural programming languages.
- It gives developers a vocabulary to talk about recurring class organizations. Now when you look at a class diagram, and parts are labelled with certain patterns, you can better understand the relationships between the classes.
Observer/Observable
MVC
We covered the roles of Model, View and Controller and how they interact.
That The goal is
- Separation of concerns
- Making code more flexable, so to add features, add views and controllers
- Ability for teams to collaborate on code
- Code reuse, so for example, the Model can be re-used in different applications
- MVC
From Sun Microsystems
-
Examples from w05.zip
- Balloon (Model), TextView (View), KeyboardController (Application and Controller)
- GUIApp1 (Application), Balloon (Model), TextView (View), ButtonInflateEventHandler (Controller)
- GUIApp2 (Application), Balloon (Model), GUIView (View), ButtonInflateEventHandler (Controller)
- GUIApp3 (Application), Balloon (Model), GUIView2 (View), ButtonInflateEventHandler (Controller)
Scrum
References
|
| 7 |
Lab 7
|
Oct 14,17,20
Readings
Arnold's Lecture Files
- Scrum
- Code examples in designpatterns.zip
This week we covered Singleton, Iterator, Simple Factory (not Factory Method, Abstract Factory).
- Git merge conflicts
gitMergeNotes.txt
and gitBranchNotes.txt
resolving merge conflicts (no branching)
I did this by
a) cloning a mote repo in two different windows
for userA and userB
c) creating a few files in the repo and having different
types of conflicts.
- two commits conflict, but on different files
- two commits conflict on the same file
Marc's Lecture Files
- w06_101.zip
Note that week 7 for Marc's lecture is actually LEC101's 6th week of classes.
|
| 8 |
Lab 8
|
Oct 20,23,24
Readings
Arnold's Lecture Files
- Code examples in designpatterns.zip
This week we covered Strategy, Command and possibly Composite.
Marc's Lecture Files
- Code examples in w07_101.zip
-
(Note that due to Thanksgiving, LEC101 is 1 week behind in lectures, hence this being labeled as Week 7 material in Week 8)
This week we covered Iteration, Singleton, Strategy, and Command.
|
| 9 |
|
Nov 4,...
Readings
Arnold's Lecture Files
Marc's Lecture Files
- Code examples and slides in w08_101.zip
-
(Note that due to Thanksgiving, LEC101 is 1 week behind in lectures, hence this being labeled as Week 8 material in Week 9)
This week we covered Composite, Builder, and Visitor deisign patterns, and SOLID principles.
Reference
|
| 10 |
Lab 10
|
Nov 10,...
Readings
Arnold's Lecture Files
Reference
Marc's Lecture Files
- Code examples and slides in w09_101.zip
-
(Note that due to Thanksgiving, LEC101 is 1 week behind in lectures, hence this being labeled as Week 9 material in Week 10)
This week we covered Composite, I/O (both from the console and Files, and RegEx. A brief intro to FSMs will be done next week).
|
| 11 |
Lab 11 (Design Patterns in Paint)
|
Nov 17...
Readings
Arnold's Lecture Files
Marc's Lecture Files
- Slides and notes: w10_101.zip
-
(Note that due to Thanksgiving, LEC101 is 1 week behind in lectures, hence this being labeled as Week 10 material in Week 11)
This week we covered FSM, and Floating Point Error.
Reference
|
| 12 |
Lab 12 (Final Exam Review)
|
Nov 26, ...
Readings
Arnold's Lecture Files
Marc's Lecture Files
- Slides and notes: w11_101.zip
-
(Note that due to Thanksgiving, LEC101 is 1 week behind in lectures, hence this being labeled as Week 11 material in Week 12)
Reference
|