LE/EECS 1720 3.0
Building Interactive Systems
Winter 2017
Department of Electrical
Engineering & Computer Science,
York University
Course Description
This course continues an introduction to computer programming
within the context of image, sound and interaction, subsequent to
EECS1710 3.00. The student’s foundation in basic programming will
serve as a platform from which to explore the use of diverse media
within interactive systems, including the WWW and simple game systems.
Topics include:
- User Interfaces (UIs)
- UI Elements
- Event driven programming
- Intro to threads
- User Interface Builders
- Guidelines for UI design
- Objects, classes and inheritance
- Interactive WWW-based systems - introduction to WWW and basic
network concepts, HTML, Javascript, other WWW technologies
(e.g. Flash), guidelines for WWW design
- How to design simple games and make them engaging
What's New
- Apr 5: The final exam will be held on Apr 12 at 9am.
It will consist of 2 parts. Part 1 is a written test held in LAS B
from 9:00 to 10:20. Part 2 is a labtest held in the lab LAS 1006
from 10:35 to 11:55.
The exam covers all the material that was seen in the course this term.
- Apr 5: If you have not yet filled out the course evaluation survey, pleas do so at http://courseevaluations.yorku.ca. The site will be open until Apr 6.
- Mar 21: There are no labs this week. The final lab, Lab 7, will be next week.
- Mar 20: Written Test 2 will be held on Mar 23 during class. It will cover everything we have seen in class until Mar 21 inclusive. The focus is on Collections and Inheritance. The test is closed books/no aids allowed.
- Mar 13: Labtest 3 will be held during the labs this week. The labtest will focus on using collections in Graphics2D in simple simulations. You may consult your Java By Abstraction textbook during the labtest. No other aids are allowed.
- Feb 27: Labtest 2 will be held during the labs this week. The labtest will focus on using Graphics2D and event handling to do simple simulations. You may consult your Java By Abstraction textbook during the labtest. No other aids are allowed.
- Feb 20:This week is reading week and there are no classes or labs.
The instructor office hours will exceptionally be held Feb. 22 at 11:30
and Feb 24 at 11am.
- Feb 12: This week, the instructor is away. On Feb 14, there will
be a review tutorial during the lecture by the TA Cyan Kuo. On Feb
16, Written Test 1 will be held during the lecture. The labs will
take place as usual. The office hours on Feb 13 and 15 are cancelled;
you can ask questions at the tutorial or by emailing the instructor.
- Feb 8: Written test 1 will be held on Feb 16 during class.
It will cover everything we have seen in class until Feb 9 inclusive.
The focus is on Exception Handling and Aggregation and Composition.
The test is closed books/no aids allowed.
- Jan 30: The deadline for submitting Lab 2 through eCheck has been extended further until February 3 at 23:59.
- Jan 23: Labtest 1 will be held during the labs this week.
The labtest will focus on exception handling.
You may consult your Java By Abstraction textbook during the labtest.
No other aids are allowed.
- Jan 23: The deadline for submitting Lab 2 through eCheck has been extended until January 30 at 23:59.
- Jan 11: Labs start this week! Make sure you activate your Prism account before your lab using the activ8 app. Detailed instructions were emailed to enrolled students.
- Jan 8: On Jan 9, exceptionally the office hour will be at 14:00 instead of 15:00.
- Jan 5: Classes start. There are no labs this week. The labs will start next week.
Instructor
Prof. Yves Lespérance
Office: LAS 3052A
Tel: 736-2100 ext. 70146
Email: lesperan "at" cse.yorku.ca
Teaching Assistants
Cyan Kuo, cyk "at" cse.yorku.ca
Yiming Qian, yimingq "at" cse.yorku.ca
Lectures
Tuesday and Thursday 10:00 to 11:30 in HNE 038.
Mandatory Labs
Lab 1: Thursday 11:30 to 13:00 in LAS 1006.
Lab 2: Friday 10:00 to 11:30 in LAS 1006.
Instructor Office Hours
Monday and Wednesday from 15:00 to 16:00, in LAS 3052A.
Required Textbook
Hamzeh Roumani.
Java by Abtraction: A Client-View Approach (4th Edition).
Pearson Education Company, 2015 (ISBN 10: 1-269-95030-4, ISBN 13: 978-1-269-95030-5).
Prerequisites
LE/EECS 1710 3.00. Course credit exclusions: LE/EECS 1020 3.00, LE/SC/CSE 1020 3.00, LE/EECS 1020 3.00, LE/EECS 1022 3.00, AP/ITEC 1620 3.0, AP/ ITEC 1630 3.0.
Tentative Evaluation Scheme
3 Labtests (@10% each) |
30% |
2 Written Tests (@10% each) |
20% |
Lab Assignments (7 @ 2% each) |
14% |
Final exam | 36% |
Total | 100% |
Tentative Schedule
- Week 1 (Jan 5) Exception Handling, Chapter 11 in textbook.
- Week 2 (Jan 9) Exception Handling (cont.), Lab 1.
- Week 3 (Jan 16) Aggregation & Composition, Chapter 8 in textbook,
Lab 2.
- Week 4 (Jan 23) 2D Graphics, Interfaces, Labtest 1.
- Week 5 (Jan 30) Event-Driven Programming, Lab 3.
- Week 6 (Feb 6) Inheritance, Chapter 9 in textbook, Lab 4.
- Week 7 (Feb 13) Inheritance (cont), Lab 5, Written Test 1.
- Feb 20-24 Reading Week - No Classes.
- Week 8 (Feb 27) Multithreading, Labtest 2.
- Week 9 (Mar 6) Collections, Chapter 10 in textbook, Lab 6.
- Week 10 (Mar 13) Collections (cont.), Labtest 3.
- Week 11 (Mar 20) Collections (cont.), Written Test 2.
- Week 12 (Mar 27) Model-View-Controller Pattern, Lab 7.
- Week 13 (Apr 3) Review.
Academic Honesty
It is important that you look at the
departmental guidelines on academic honesty. Although you may discuss the general approach to solving a problem with other people, you should not discuss the solution in detail. You must not take any written notes away from such a discussion. Also, you must list on the cover page of your solutions any people with whom you have discussed the problems. The solutions you hand in should be your own work. While writing them, you may look at the course textbook and your own lecture notes but no other outside sources.
Readings and Lecture Slides
Lab Exercises
- Week 2 (Jan 9) Lab 1 - Exception Handling
Instructions are here.
For information on the Prism lab facilities, see
Steven Castellucci's Guided Tour. (Note that email is no longer provided as part of your EECS account, instead you have it as part of your York account; o you can ignore the section on mail forwarding.)
- Week 3 (Jan 16) Lab 2 - Exception Handling
Instructions are here.
The deadline for completing the lab and running eCheck successfully is 23:59 on February 3, 2017.
- Week 5 (Jan 30) Lab 3 - Graphics2D
Download this
1720_W17_Lab03Exercises.zip .Eclipse project archive and import
it into Eclipse. The 5 exercises are in the Java files in the
src
directory. To get full marks for this lab
assignment, go to your lab, enter your name on the sign up sheet,
complete the exercise described in Exercise4.java
, and
show your correct solution to the TA before the end of the lab
session. If your solution is correct, the TA will record it and you
will get full credit for the lab assignment.
- Week 6 (Feb 6) Lab 4 - Graphics2D Simulation
Download this
1720_W17_Lab04Exercises.zip Eclipse project archive and import
it into Eclipse. The four exercises are in the four
Task_i.java
files in the
src
directory. To get full marks for this lab
assignment, go to your lab, enter your name on the sign up sheet,
complete the exercise described in Task3.java
, and
show your correct solution to the TA before the end of the lab
session. If your solution is correct, the TA will record it and you
will get full credit for the lab assignment.
The ouptut for Task 3 and Task 4 should look roughly as follows:
- Week 7 (Feb 13) Lab 5 - Graphics2D Simulation Delegated
Download this
1720_W17_Lab05Exercises.zip Eclipse project archive and import
it into Eclipse. The five exercises are in the five
Task_i.java
files in the
src
directory. To get full marks for this lab
assignment, go to your lab, enter your name on the sign up sheet,
complete the exercises described in Task4.java
and
Task5.java
, and show your correct solutions to the TA
before the end of the lab
session. If your solutions are correct, the TA will record it and you
will get full credit for the lab assignment.
- Week 8 (Mar 6) Lab 6 - Graphics2D Simulation Model-Based
The instructions for the lab are here. To get full marks for this lab assignment, you must go to your lab, enter your name on the sign up sheet, show your working solution to Exercise 4 to the TA, and submit your Eclipse project containing the Exercise 4 solution before the end of the lab period. Follow the link above for the details.
- Week 11 (Mar 27) Lab 7 - A Shooter Game Based on the Model-View-Controller Architecture
The instructions for the lab are here.
To get full marks for this lab assignment, you must go to your lab,
enter your name on the sign up sheet, and
show your working solution to Exercise 3
to the TA before the end of the lab period.
Follow the link above for the details.
Other resources