This module will introduce students without a background in Computer Science to the subject’s core concepts. The central concepts of algorithm and data structure will be introduced, and the importance of generalisation and abstraction discussed. The implementation of these concepts will be introduced using imperative and object-oriented programming techniques in the Java Programming language. The relationship between the computer’s hardware and software will be discussed: how programmes and data are represented, and how programmes are executed.
Learning Outcomes
By the end of the module students should be able to:
demonstrate a practical understanding of basic computer programming techniques
explain and apply the fundamental constructs of imperative and object-oriented programming
explain, apply, and implement simple data structures and algorithms
explain the importance of abstract models of computation and data
demonstrate an understanding of the relationship between a computer’s hardware and software, and be able to explain how data is represented in programmes are executed by the computer
Assessment
31667-01 : Examination : Exam (Centrally Timetabled) - Written Unseen (80%)
31667-02 : Written and programming exercises : Coursework (20%)
Assessment Methods & Exceptions
Assessment: 2hr Examination (80%), Written and programming exercises (20%)