The University of Sheffield
Department of Computer Science

COM6471 Foundations of Object Oriented Programming

Summary This module introduces the foundations of object-oriented programming using the language Java. The emphasis of the module is on software engineering principles, and concepts underpinning object-oriented design and development are introduced from the outset. By the end of the course, students will be able to design, implement and test moderately complex Java programs.
Session Autumn 2023/24
Credits 15
Assessment Programming assignment & final examination
Lecturer(s) Dr Zhixiang Chen
Resources
Aims
  • To introduce basic programming structures;
  • to provide a grounding in object-oriented programming techniques;
  • to encourage a component-based approach to large program design;
  • to introduce the major aspects of the Java API;
  • to develop an understanding of data structures and algorithmic complexity;
  • to establish a sound and consistent programming style in Java.
Learning Outcomes  By the end of the module the student will be able to:
  • Understand basic programming structures.
  • Understand what is meant by object-oriented and component-based programming.
  • Structure Java programs to solve simple problems, making use of the Java API and using a sound and consistent programming style.
  • Design an encapsulated data type with private and public aspects, with an appreciation of algorithmic complexity.
Content
  • The Java language and its characteristics;
  • Objects, classes and instances;
  • Sequence, selection, repetition;
  • Arrays and searching;
  • Inheritance, polymorphism, interfaces and abstract classes;
  • Abstract data types, e.g. stacks and queues;
  • Input, output;
  • Introduction to graphics in Java;
Teaching Method Lectures and Laboratory sessions.
Feedback

Debriefing lectures after assignment hand in to provide group feedback
Individual feedback on assignment performance from individual marking.
Feedback in lab class performance through interaction with demonstrators.
Practice exam questions.