Course Outline - CMPT 213 - Object Oriented Design in Java
Information
Subject
Catalog Number
Section
Semester
Title
Instructor(s)
Campus
CMPT
213
D100
2022 Fall (1227)
Object Oriented Design in Java
Bobby Chan
Surrey Campus
Calendar Objective/Description
Object Oriented Design in Java
Instructor's Objectives
Throughout the course, students will learn and use Java to solve interesting problems but no background in Java is expected. The course will cover a number of design patterns which students will use in the assignments. There will be a focus on designing and writing good maintainable code, as such all code submitted will need to conform to a coding standard which will be discussed in class.
Prerequisites
see go.sfu.ca
Topics
- Introduction to Java, including advanced features such as enum, generics, and mutable vs immutable.
- Inheritance, polymorphism, interfaces and abstract classes.
- Introduction to object oriented design (OOD) and some UML diagrams.
- Code construction, best practices and coding standard.
- Basic software design patterns such as iteration, singleton, observers, or template methods.
- Introduction to refactoring.
- Basic introduction to event driven user interface programming, and use of threads.
- Software development tools, such as advanced IDE features, build tools, debuggers, and JavaDoc.
Grading
35% assignments and project, 20% midterm, 45% final exam. Grading will be confirmed in the first week of class.
Students must attain an overall passing grade on the weighted average of exams in the course in order to obtain a clear pass (C- or better).
Reference Books
- Code Complete, 2nd ed., Steve McConnell, Microsoft Press, 2004, 9780735619678
- Head first design patterns, Freeman and Freeman, O'Reilly, 2004, 9780596007126
- Patterns in Java (Volume 1), Mark Grand, Wiley, 2002, 9780471227298
- Object-Oriented Design & Patterns, 2nd ed, Cay Horstmann, Wiley, 2006, 9780471744870
Academic Honesty Statement
Academic honesty plays a key role in our efforts to maintain a high standard of academic excellence and integrity. Students are advised that ALL acts of intellectual dishonesty will be handled in accordance with the SFU Academic Honesty and Student Conduct Policies ( http://www.sfu.ca/policies/gazette/student.html ).