WI13 AP ITEC 2610M Course Outline

advertisement
ITEC 2610 3.0 section M
Object-Oriented Programming
Winter 2013
Instructor: Professor R.Campeanu (campeanu@yorku.ca)
Homepage: http://www.atkinson.yorku.ca/~campeanu
Lectures – Tuesdays and Thursdays 2:30-4:00 pm in TEL 0006
Labs: 2003/2027/2032 in the TEL building
Important Dates:
Jan.8
Classes start
Feb.5
Test 1
Feb.18-24
Reading Week (no classes)
March 7
Test 2
March 15
Last day to withdraw from the course without receiving a grade
April 4
Final Exam
Online course evaluation
Office Hours – Tuesdays and Thursdays 3:30-4:30 pm in 3059 TEL
Course Description
This is a continuation of problem solving and algorithm development in the context of
object-oriented programming techniques. Taught in Java, topics include inheritance,
polymorphism, interfaces, events, threads, data structures. Object-oriented design
principles will be presented in conjunction with applications in graphics and user
interfaces.
Prerequisites: AS/AK/ITEC1620 3.0 or AS/AK/ITEC1020 3.0 or
AS/AK/SC/COSC1020 3.0
Course Content and Schedule
1: Programming language alignment, building classes




Programming language alignment, feature comparison of different
programming languages, how to choose an appropriate language for an
application
Defining classes in Java
Scopes of variables
static methods and variables
2: Building multi-class applications, OO design, UML



Object-oriented design
Using UML for system analysis and design
Interactions between classes
3: Inheritance, graphics




Inheritance in Java: concepts and usage
Java class hierarchy
Graphics class, drawing shapes using Graphics
JFrame and JApplet classes
4: Interfaces, polymorphism



Interfaces in Java: concepts and usage
Polymorphism
Building extensible applications with interfaces and polymorphism
5: GUI components and event handling



AWT and Swing components
Building GUI applications with GUI components
Event-driven programming in GUI applications
6: Layout managers



Basic layout managers: FlowLayout, BorderLayout, and GridLayout
Complex GUI design with multiple layers of containers
More GUI layout managers: CardLayout
7: Exception handling files and I/O


Exception handling in Java
Checked and unchecked exceptions
8: External files and I/O


Reading and writing text files and binary files
Random access files
9: Multithreading and synchronization


Multithreading and concurrent programming: motivations and concepts
Using threads in Java


Threads synchronization
Networking with Sockets
10: Animation and sound



Animation using threads
Flicker-free animation with double buffering
Multimedia capabilities of Java
11: Data structures: linked lists and trees





Self-referential classes
dynamic memory allocation
Linked lists
Stacks and queues
Trees
Textbook Required:
“Big Java” by Cay Horstmann, John Wiley&Sons 2002, ISBN: 0-471-40248-6;
Useful Web Address for Java APIs:
http://java.sun.com/j2se/1.5.0/docs/api/
Useful Tutorials on the Web:
http://java.sun.com/docs/books/tutorial/
A very Useful Java Glossary:
http://mindprod.com/jgloss/jgloss.html
Code Conventions for Java:
http://java.sun.com/docs/codeconv/
Marking Scheme
Assignments
Test 1
Test 2
Final exam
15%
35%
30%
20%
Class Format
The lectures will emphasize the most important part of the material. Although this
material is available on this Web site it is important to know which topics are expected to
be known well for the test/exam. Please ask relevant questions during class, or individual
questions at the end of class. Questions which require a more detailed answer will be
addressed during my office hours.
Late Policy
Late assignments or missed midterm tests will not be penalized if medical documentation
is presented. In the case of the missed midterm its weight will be added to the weight of
the assignment + final exam. This system will not apply to the assignment, which must be
submitted. If submitted late with a doctor’s note there will be no penalty. If no doctor’s
note is presented a 5% penalty will be applied for each late day. If you miss the final
exam for medical reasons you have to apply for deferred final examination within a week
from the exam date.
Academic Honesty
The assignment is supposed to be produced through independent work. You may talk to
your classmates but the final form of the assignments must be your own. The penalty for
electronically copied assignments is a zero plus the possibility of a disciplinary action.
Download