School of Computing

Module details

CO882 Advanced Object-Oriented Programming (15 credits)

Syllabus

Building upon CO881 Introduction to Object-Oriented Programming, this module covers the design and implementation of high-quality software using OO techniques. Systems are modelled as configurations of objects communicating with one another. Techniques (e.g. inheritance) are introduced which allow objects to play different roles within a system. These two concepts are key to the support for adaptation and reuse that OOP provides. Much emphasis will be placed on gaining a deep understanding of these concepts and applying them in practice by developing programs in Java. The remainder of the module will explore software component frameworks, specifically those that come packaged with Java, placing most emphasis on the frameworks to support the structuring and manipulation of data (data structures and algorithms).

  • The idea of objects and classes in object-oriented design and implementation.
  • The structure of object-oriented programs.
  • Design and problem decomposition in object-oriented programming.
  • The detailed structure of classes, including attributes and methods, access modifiers, object creation and deletion, static and non-static members.
  • Persistence of data and file handling.
  • Data structures, including static and dynamic collections.
  • Algorithms, illustrated through examples such as sorting and searching.
  • Basic concepts of algorithm complexity.
  • Testing and exceptions.
  • Using language facilities to construct larger-scale programs which demonstrate reliability and extensibility.
  • Explaining and documenting object-oriented programs.
  • Basic ideas of inheritance and polymorphism.

Note

This web page provides advance information about a module due to run in the coming academic year. We believe the details are accurate at the time of writing but they may be subject to change.

School of Computing, University of Kent, Canterbury, Kent, CT2 7NF

Enquiries: +44 (0)1227 824180 or contact us.

Last Updated: 08/04/2011 15:43