Skip to main content

Software and Programming I (Level 5)

Overview

  • Credit value: 15 credits at Level 5
  • Convenor: Dr Panagiotis Charalampopoulos
  • Assessment: problem-solving exercises: coursework (30%), in class assessment (20%) and coursework with a project assignment (50%)

Module description

In this module we discuss the basic procedural and object-oriented features of the Java programming language. You will learn how to edit, compile and run small Java programs.

Indicative syllabus

  • Primitive data types and operators in Java
  • Branching and looping statements, variable scope
  • Arrays: the enhanced for loop, basic array algorithms and using arrays with methods
  • Objects and classes; creating objects and constructors; manipulating objects and methods
  • Access modifiers: public and private
  • Passing objects as references; reference this
  • The qualifier final for constants
  • Instance and class variables and methods
  • Packages
  • Inheritance

Learning objectives

By the end of this module you will be able to:

  • understand and explain advanced object-oriented features of the Java programming language, including inheritance, polymorphism and encapsulation
  • utilise primitive data types, operators, branching and looping statements, and variable scope to develop complex Java programs
  • design and implement Java programs using arrays, objects, classes and packages, incorporating access modifiers and the final qualifier
  • analyse more complex algorithms, applying advanced problem-solving strategies
  • evaluate different approaches and select the most efficient solutions for a specific problem
  • edit, compile and run Java programs using standard tools (IDE and compiler), including the use of packages and class libraries
  • develop Java applications that utilise inheritance, polymorphism and encapsulation to solve real-world problems.