|
Week |
Dates
|
Topics and Materials
|
Comments |
|
1 |
Mon & Tue Jan 4/5, 2010 |
Lab 0 |
Consult lab for pre-lab readings or exercises. |
| 1 |
Tue Jan 5, 2010 |
Topics: Course Format and Control-flow Models
Readings (available from Readings page):
- ubc-cpsc-210-preamble.pdf (All of reading)
- ubc-cpsc-210-control-data-models.pdf (pages 1 through 4)
Lecture Materials:
- (Notes - at bottom of page) ubc-cpsc-210-IntroLecture-1.pdf
|
Readings are to be completed prior to class.
|
| 1 |
Thur Jan 7, 2010
|
Topic: Control and Data Models
Readings:
- ubc-cpsc-210-control-data-models.pdf (pages 5-9)
Lecture Materials:
- Code to load (we will talk about how to load it in class):
svn+ssh://westham.ugrad.cs.ubc.ca/home/c/cs210/repositories/instructor/lectureCandDModels-TeamMaker1 |
|
| 2 |
Mon & Tue Jan 11/12, 2010 |
Lab 1 |
Consult lab for pre-lab readings or exercises |
|
2 |
Tue Jan 12, 2010 |
Topic: Control and Data Models and Data Abstraction
Readings:
- ubc-cpsc-210-control-data-models.pdf (pages 10-12)
- ubc-cpsc-210-data-abstraction.pdf (pages 1-10)
Lecture Materials:
- We will use the TeamMaker code you loaded in lecture on Thursday January 7.
|
|
|
2 |
Thu Jan 14, 2010 |
Topic: Data Abstraction
Readings:
- ubc-cpsc-210-data-abstraction.pdf (pages 11-19)
Lecture Materials:
- We will use the TeamMaker code you loaded in lecture on Thursday January 7.
|
|
| 3 |
Mon and Tue, Jan 18/19, 2010
|
Lab 2
|
Consult lab for pre-lab readings and exercises
|
| 3 |
Tue Jan 19, 2010 |
Topic: Type Hierarchies, Polymorphism and Dispatching Readings:
- ubc-cpsc-210-type-poly-dispatch.pdf (pages 1-15)
Lecture Materials:
- Code used:
svn+ssh://westham.ugrad.cs.ubc.ca/home/c/cs210/repositories/lectures/lecturePolyTypeDispatch
|
|
| 3 |
Thu Jan 21, 2010
|
Topic: Type Hierarchies, Polymorphism and Dispatching
This lecture will mostly be a lecture/lab where you will work through some given problems on a bigger code base than we've looked at thus far with a partner. We'll then discuss what you've found as a group.
We will briefly cover overloading at the beginning of the class.
If possible, bring a laptop with one or both of the systems listed below loaded into Eclipse.
Lecture Materials
- Questions we will work on in class are posted at bottom of the page (UBC-CPSC-210-PolyTypeDispatch-LectureLab.pdf).
- Code to load:
- Moderately hard code base:
svn+ssh://westham.ugrad.cs.ubc.ca/home/c/cs210/repositories/lectures/lectureJDrawing:
Load the JDrawing folder
- Harder code base:
svn+ssh://westham.ugrad.cs.ubc.ca/home/c/cs210/repositories/lectures/lectureJHotDraw
Load the JHotDraw folder (Note this is about 15MB)
|
|
4
|
Mon/Tue Jan 25/26, 2010
|
Lab 3
|
Consult lab for pre-readings and exercises.
|
| 4 |
Tue Jan 26, 2010
|
Topic: Designing Robust Classes Readings:
- ubc-cpsc-210-robust-classes.pdf (All - pages 1-15)
Lecture Materials:
- Please load:
svn+ssh://westham.ugrad.cs.ubc.ca/home/c/cs210/repositories/lectures/lectureDesigningRobustClasses
Check out the Lecture-DesigningRobustClasses folder in the repository location.
Note: This code will not yet compile. There may be more code to load before class from another project.
|
Please do the reading prior to class. We will start with some questions about the concepts for any clarifications needed. Most of the class time will be working through examples of the concepts.
|
| 4 |
Thu Jan 28, 2010
|
Topic: Iteration Abstraction Readings:
- ubc-cpsc-210-iteration-abstraction.pdf (All - pages 1-8)
Lecture Materials:
- ubc-cpsc-210-Iteration-Abstraction.pdf (see below)
- Please load:
svn+ssh://westham.ugrad.cs.ubc.ca/home/c/cs210/repositories/lectures/lectureIterationAbstraction
Check out the Lecture-IterationAbstraction folder below the repository location.
Note: This code will not yet compile, but we will make it so in class!
|
This is the last day of material for the first midterm.
|
| 5 |
Tue Feb 2, 2010
|
Review session. Come with your questions about the posted exercises.
Study Guide!: ubc-cpsc-210-midterm1-study-guide-2010-01-28.pdf (see below)
|
Please note I am off-campus on Wed before the mid-term! I am available for meetings Monday, Tuesday or Thursday.
|
|
5
|
Thu Feb 4, 2010 |
Mid-term in class in 014 (the location of your lab!). Bring your computer.
Repository Location:
svn+ssh://westham.ugrad.cs.ubc.ca/home/c/cs210/repositories/lectures/lectureMidTermOne-2009W2
|
|
| 6 |
Mon/Tue Feb 8/9, 2010 |
Lab 4
|
Consult lab for pre-readings and exercises. |
| 6 |
Tue Feb 9, 2010
|
Topic: Object-Oriented Design I and Mid-term Review Readings:
- ubc-cpsc-210-object-oriented-designI.pdf (What is Software Design and Responsibility-Driven Design sections)
Lecture Materials:
- ubc-cpsc-210-object-oriented-designI-slides.pdf (see below).
|
|
| 6 |
Thu Feb 11, 2010
|
Topic: Object-Oriented Design I Readings:
- ubc-cpsc-210-object-oriented-designI.pdf (UML Class Diagram section)
Lecture Materials:
|
Olympic torch comes to UBC!
|
| |
Olympic Break
|
Two-week break
|
|
| 7 |
Mon/Tue Mar 1/2, 2010
|
Lab 5
|
Consult lab for pre-readings and exercises. |
| 7 |
Tue Mar 2, 2010
|
Topic: Implementing an Object-oriented Design: Representing Object Relationships in Code Readings:
- ubc-cpsc-210-implementing-AnOODesign.pdf (pp. 1-9, but not Connections between Objects section)
Lecture Materials:
- Source code:
svn+ssh://westham.ugrad.cs.ubc.ca/home/c/cs210/repositories/lectures/lectureImplementingAnOODesign
(Expand "work" and check out Lecture-ImplementingAnOODesign
- Slides:
UBC-CPSC-210-Collections.pdf (see below) UBC-CPSC-210-ImplementingAnOODesign-Problems.pdf (see below)
|
|
| 7 |
Thu Mar 4, 2010
|
Topic: Implementing an Object-Oriented Design: Representing Object Relationships in Code Readings:
- ubc-cpsc-210-implementing-AnOODesign.pdf (pp. 9-17)
Lecture Materials:
- Source code:
svn+ssh://westham.ugrad.cs.ubc.ca/home/c/cs210/repositories/lectures/lectureImplementingAnOODesign2
Check out Lecture-ImplementingAnOODesign2 (not the work one)
|
|
| 8 |
Mon/Tue Mar 9/10, 2010
|
Lab 6: Project (no pre-lab)
|
|
8
|
Tue Mar 9, 2010
|
Topic: User Interface Fundamentals Readings:
- ubc-cpsc-210-GUI (pp. 1-3, upto Models section)
Lecture Materials:
- Source code:
svn+ssh://westham.ugrad.cs.ubc.ca/home/c/cs210/repositories/lectures/lectureGUI
Check out lectureGUI (not the work one)
|
|
8
|
Thu Mar 11, 2010
|
Topic: User Interface Fundamentals Readings:
- ubc-cpsc-210-GUI (pp. 3-5)
Lecture Materials:
- Source code:
svn+ssh://westham.ugrad.cs.ubc.ca/home/c/cs210/repositories/lectures/lectureGUI2
Check out lectureGUI2_work/lectureGUI2 (keeping you on your toes moving these around :) )
- Problem description we will work on for part of class is below named ubc-cpsc-210-GUI-problem.pdf
|
|
9
|
Mon/Tue Mar 15/16, 2010
|
Lab 7: Project
|
Project milestone is due
|
9
|
Tue Mar 16, 2010
|
Review session. Come with your questions about the posted exercises.
In class we'll go over #2 (but not the additional requirements) from QuestionSet_06, #1 and #2 from QuestionSet_07 and the GUI questions in QuestionSet_08.
Study Guide!: ubc-cpsc-210-midterm2-study-guide-2010-03-05.pdf (see below) |
Gail away. Meghan will do review.
|
9
|
Thu Mar 18, 2010
|
Mid-term #2: Location 014
|
New date! Gail away. Meghan will administer exam.
|
| 10 |
Mon/Tue Mar 22/23, 2010
|
Lab #8: Project
|
Project milestone is due
|
10
|
Tue Mar 23, 2010
|
Topic: Object-Oriented Design II: Evaluating designs and improving flexibility. This will be a lecture/lab where we will work on an object-oriented design and implementation that will then be improved upon in the following lectures.
Readings:
- ubc-cpsc-210-object-oriented-design2.pdf (all of reading and Composite pattern page)
|
|
10
|
Thu Mar 24, 2010
|
Topic: Object-Oriented Design II Composite and Decorator design patterns.
Readings:
- ubc-cpsc-210-object-oriented-design2.pdf (Decorator and Factory Method pattern pages)
Lecture Materials:
- svn+ssh://westham.ugrad.cs.ubc.ca/home/c/cs210/repositories/lectures/lecturePhotoAlbum
- Photo Album Design: photo-library-design (see below)
- svn+ssh://westham.ugrad.cs.ubc.ca/home/c/cs210/repositories/lectures/lectureGUI2 (check out Lecture-GUI2-complete)
- For the working version of the graphical drawing editor with Composite, check out:
svn+ssh://westham.ugrad.cs.ubc.ca/home/c/cs210/repositories/lectures/lectureCompositeDP (Lecture-CompositeDP folder)
|
|
| 11 |
Mon/Tue Mar 29/30, 2010
|
Lab 9: Project
|
Project milestone is due
|
| 11 |
Tue Mar 30, 2010
|
Topic: Object-oriented Design II
Readings:
- ubc-cpsc-210-object-oriented-design2.pdf (Decorator)
Lecture Materials:
- You can access the Decorator example implemented in the graphical editor at:
svn+ssh://westham.ugrad.cs.ubc.ca/home/c/cs210/repositories/lectures/lectureDecoratorDP (check out Lecture-DecoratorDP *under* lectureDecoratorDP_work) - The steps from lecture-lab today are posted below as
ubc-cpsc-210-DecoratorDesignPattern.pdf
|
|
| 11 |
Thu Apr 1, 2010
|
Topic: Object-oriented Design II
Readings:
- ubc-cpsc-210-object-oriented-design2.pdf (Factory Method)
Lecture Materials:
- svn+ssh://westham.ugrad.cs.ubc.ca/home/c/cs210/repositories/lectures/lecturePizza (check out Lecture-FactoryDP)
- Open-Closed Principle: classes should be open for extension but closed for modification.
- Dependency Inversion Principle: depend upon abstractions. Do not depend upon concrete classes.
|
|
| 12 |
Mon/Tue Apr 5/6, 2010
|
No lab as Monday is Easter Monday Holiday. Stay tuned about special TA hours for help with project.
|
Monday April 5 is Easter Monday Holiday. No lab on Monday or Tuesday.
|
12
|
Tue Apr 6, 2010
|
Topic: Linked Data Structure Implementation
Readings:
- p. 175-194 in handout about Singly Linked Data Structure (handouts will be given out in class on April 1 - no, not a joke!)
Lecture Materials:
- svn+ssh://westham.ugrad.cs.ubc.ca/home/c/cs210/repositories/lectures/lectureLinkedList (Check out Lecture-LinkedList)
|
|
| 12 |
Thu Apr 8, 2010
|
Class time is available to work on projects. We'll have the phones available in DMP 201 where we usually meet. If you don't need the time with the phones or time on the project, feel free not to drop by.
|
|
| 13 |
Mon/Tue Apr 12/13, 2010
|
Lab: Project Demos!
|
Entire project must be completed before your lab.
|
| 13 |
Tue Apr 13, 2010
|
Topic: Trees - constructing binary trees, binary search trees and n-ary trees. find and removal from binary trees.
Readings:
- p. 497-537 in handout about Trees
Lecture Materials:
- svn+ssh://westham.ugrad.cs.ubc.ca/home/c/cs210/repositories/lectures/lectureBinaryTree (Check out Lecture-BinaryTree
|
|
| 13 |
Thu Apr 15, 2010
|
Topic: TA Evaluations + Traversing Trees. Please fill out on-line instructor evaluation.
Readings: Lecture Materials:
- Please update the Lecture-BinaryTree code from last class.
|
|
| |
|
|
|
| | Mon, Apr 19, 2010
| Office Hour (Gail): 1-2pm and 3:30-5 (ICICS 305)
| |
| | Fri, Apr 23, 2010
| Office Hour (Gail): 3-5pm (ICICS 305)
| |
| | Mon, Apr 26, 2010
| Office Hour (Gail): 11am-1pm and 2:30-5pm (ICICS 305)
| Please email if none of these office hours work for you and we can set up a time.
|
| |
Tue Apr 27, 2010 |
3:30pm Final Exam. Location ICICS 014. |
A final study guide is available (ubc-cpsc-210-final-study-guide-2010-04-15.pdf). Also consult the mid-term study guides!
|