Dr J Han
6 points - 4 hours per week - Second semester - Peninsula - Prerequisites: CPE1001 - Prohibitions: CFR1124, CFR7312, CSC1030, DGS1400, GCO1812, GCO7823, SFT1102
Objectives At the completion of this subject, students should understand and be able to apply the concepts, principles and techniques of object-oriented program design; be able to select and use advanced data structures in solving practical problems; be able to develop applications by composing existing and new program components; possess the necessary skills to test object-oriented programs; be able to develop World Wide Web client applications.
Synopsis This subject focuses on advanced object-oriented programming concepts and techniques with emphasis on program design. These concepts and techniques are taught in the context of worked case studies. It covers the identification of objects/classes and their relationships, the design and implementation of classes and relationships, and the principles of encapsulation, inheritance, polymorphism and program reuse. Other topics include advanced data structures (stacks, queues, general lists, binary trees and files), exception handling, class libraries and APIs, advanced applet programming (for the World Wide Web), components and their reuse, techniques and heuristics for testing object-oriented programs, and introduction to event-driven programming.
Assessment Unit test: 20% - Assignments: 40% - Examination: 40%
Prescribed texts
Deitel H M and Deitel P J Java how to program 2nd edn,
Prentice-Hall, 1997
Booch G Object-oriented analysis and design with applications 2nd edn,
Benjamin-Cummings, 1994
References
Walden K and Weedon R Seamless object-oriented software
architecture Prentice-Hall, 1995
Chan P and Lee R The Java class libraries: An annotated reference
Addison-Wesley, 1996