Outline - Langara College

advertisement
La
n
Sp ga
rin ra
ar g Co
ch 20 lle
ive 07 ge
d -
Department of Computing Science
and Information Systems
CPSC 1181 – Object-Oriented Computing
Course Outline
Spring 2007
Course Number:
Sections:
Room:
CPSC 1181 (4:0:2)
1
Section 1
Lecture:
Lab:
Instructor:
Office:
Office Hours:
Phone Number:
E-mail:
B014 (15:30 - 17:25 M––R-)
A217 (15:30 - 17:25 ––T—)
Bryan Green
B246c
9:30 – 11:25 TR (or by appointment)
604-323-5736
bgreen@langara.bc.ca
Description and Objectives
As printed in the calendar, the description is: Introduces the fundamental concepts of
programming from an object-oriented (OO) perspective: abstraction; objects; classes and class
hierarchies; methods; parameter passing; encapsulation and information hiding; inheritance;
polymorphism. OO design with modeling tools (e.g., class diagrams). Application of simple
container/collection classes; event-driven programming; exception handling; GUI; multithreading; and networking. Emphasizes good software engineering principles using a language
that supports the OO paradigm (e.g., Java).
The topics covered will be:
1. Object Oriented Programming – classes and objects
2. Java Data types, Arrays and Strings
3. Inheritance and Polymorphism
4. Java Applets and GUI Design
5. Event Handling
6. Files and Streams
7. Exception Handling
La
n
Sp ga
rin ra
ar g Co
ch 20 lle
ive 07 ge
d -
8. Multithreading
9. UML
Prerequisites and Expectations
As printed in the calendar, the prerequisite for CPSC 1181 is minimum ‘C’ in CPSC 1150 or
CPSC 1155; or permission of department..
Other expectations for this course:
• Students are expected to find at least 4 hours of lab time per week in addition to the
scheduled class and lab time to complete hands-on exercises and assignments.
• Students are encouraged to experiment to find the answers to their own questions and to
learn new software features by looking up information in help files, by guessing, and by
experimenting.
Transferability
CPSC 1181 transfers to several other BC institutions. Please check the transfer guide for other
institutions not mentioned here, or for your situation.
SFU CMPT 125 (3) – Q
UBC CPSC (3) 1st. or CPSC 1150 & LANG CPSC 1160 &
LANG CPSC 1181 = UBC CPSC 111 (4) & UBC CPSC
211 (4) & UBC CPSC 1st (1).
UVIC CSC 110 (1.5); LANG CPSC 1150 & LANG CPSC
1181 = UVIC CSC 110 (1.5) & UVIC CSC 100 lev (1.5)
Equipment and Labs
The scheduled lab component of this course is taught in A217, which is equipped with IBM PCcompatible microcomputers. These computers (and all computers on campus) are attached to the
network, which provides shared storage and printing facilities. You can use any of Langara’s
other labs (such as A215, A216, A217, A219, A264, B015, B019, G109a, K110, L011, L012) to
do your homework.
Texts and Materials
Required:
• A couple of 3½ floppy disks or memory stick
• Folders for handing in assignments
Required (buy at least one):
• Big Java 2ed, Cay Horstmann (John Wiley and Sons, 2006).
• OO Design & Patterns, 2nd ed., Cay Horstmann (John Wiley and Sons, 2005).
Useful:
• Thinking in Java, 3rd or 4th edition, Bruce Eckel (I:\Courses\CPSC\1181\Thinking In Java
or http://bruceeckel.com/)
B. Green
2
CPSC 1181
La
n
Sp ga
rin ra
ar g Co
ch 20 lle
ive 07 ge
d -
Course Evaluation
Task
% of Final Mark
25%
30%
10%
35%
Written Midterms (2)
Weekly Labs and Assignments
Unannounced quizzes and participation
Final Written Examination
Grading
Letter
Percentage
Grade
A+
90 – 100
A
85 – 89
A80 – 84
B+
76 – 79
B
72 – 75
B68 – 71
C+
64 – 67
C
60 – 63
C55 – 59
D
50 – 54
F
< 50
Course Policies
1. Participation includes (but is not limited to): attending classes and labs, arriving on time
and being prepared, working on and completing in-class exercises, being respectful of
others and finally, offering responses to questions and actively participating in classroom
discussions.
2. The student is responsible for all materials covered in any classes that he/she misses.
3. No make up midterms or quizzes will be given.
4. The final examination is common to all sections of CPSC 1181 and will be two (2) hours
in duration. Permission to change the date and time of an exam cannot be granted by the
instructor; it is given by the Registrars Office only for valid reasons outlined in the Final
Examination Policy (leaving for a holiday is not considered a valid reason).
5. In order to get a C or higher in computer science courses, student MUST achieve at least
a 50% average in each examination component (midterms and final) of the course.
6. In order to pass the course, everyone is required to hand-in an attempt at solving every
assignment and to achieve a satisfactory assignment mark.
7. A student who misses 20% or more of the course may receive a failing grade in the
course, even if the mark would otherwise be a pass.
8. Each assignment is due on the day and the time appointed. Assignments received after
that time will be considered late. 20% will be deducted for each day late. A partially
B. Green
3
CPSC 1181
La
n
Sp ga
rin ra
ar g Co
ch 20 lle
ive 07 ge
d -
completed assignment is better than a zero. If you will be late for or absent from a class,
it is your responsibility to make sure your assignment gets handed in on time.
9. Start your assignments early. The excuse "The computer ate my homework," or “The
computer network is down” or any variants thereof, will not be accepted as viable reasons
for lenience concerning the late policy.
10. Questions and problems regarding assignments will be posted on the class Web site.
Students are responsible for regularly checking the site for updates.
11. Each student is expected to do his/her own work and enter his/her own keystrokes. While
helping one another is encouraged, direct copying of assignments is cheating and will be
penalized appropriately. Penalties may include, but are not limited to: a zero grade on the
assignment, failing the course, an interview with the Dean, and a permanent note on your
student record.
12. Please read other Langara Policies (http://www.langara.bc.ca/policies/index.html) under
which you are required to abide, particularly B3002, B3008, B5002, and F1004.
Useful Notes
•
•
Computer science is a contact sport. The successful student is one who is interested in
learning the rules of the game, not afraid of getting their hands dirty and willing to play
with all their heart and enthusiasm.
With respect to assigned work (and solving problems in general!), you might want to
keep the following slogan in mind: “Make it work before you make it good; make it good
before you make it beautiful”. The message it conveys is to concentrate on the important
features of the overall design. Within the systems we will be using, it will be a constant
danger to overly concentrate on whiz-bang presentation without doing anything
productive. (“It took me a week and a half but I finally got my name to dance across the
screen!”) You may get close to zero because although some piece of your output was
incredibly brilliantly designed and beautifully presented, nothing actually worked the
way it was supposed to! Emphasis will always be placed on modularity and the principles
of incremental design, clear layout and helpful documentation.
B. Green
4
CPSC 1181
La
n
Sp ga
rin ra
ar g Co
ch 20 lle
ive 07 ge
d -
Outline
The following is a tentative schedule for the semester. Due dates are subject to change.
Week
Lecture Topic
1
Jan 8 – 12
Introduction / OOP/ Objects and data
types
2
Jan 15 – 19
Decisions, Loops and arrays
3
Jan 22 – 26
Designing Classes and UML
4
Jan 29 – Feb 2
5
Feb 5 – 9
6
Feb 12 – 16
7
Feb 19 – 23
8
Feb 26 – Mar 2
9
Mar 5 – 9
10
Mar 12 – 16
11
Mar 19 – 23
12
Mar 26 – 30
13
Apr 2 – 6
Generics and
Internet Programming
Apr 9 – 19
Final Exam Period
Apr 9 – Easter Monday
Apr 10 – Study Day
Textbook
Readings
Ch 1, 17.1,
2, 3, 4, 5,
A, C
Ch 6, 7, 8,
E, F, G, K
Ch 9, 17.2,
N
Testing
Ch 10
Interfaces
Ch 11
Inheritance and Polymorphism
Ch 13
Exception Handling
14
B. Green
Feb 22 - 23 – Spring Break
Class Cancelled
File IO
Feb 26 – Midterm #1
Ch 15
Ch 16
Event Handling
Ch 12
GUI
Ch 14
OO Design
Mar 22 – Midterm #2
Multithreading
Mar 30 – Last Day to Withdraw
5
Ch 17
Ch 23
Ch 22, 24
CPSC 1181
Download