Course co-ordinator(s): Chin Zi Hau (Malaysia).
Aims:
This course is aimed at students enrolled in the BSc Data Sciences programme and it introduces computer programming language fundamentals suitable for a data scientist using a relevant programming language, e.g., python.
Detailed Information
Course Description: Link to Official Course Descriptor.
Pre-requisites: none.
Location: Dubai, Edinburgh, Malaysia.
Semester: 1.
Syllabus:
- Introduction to computer science, algorithms, computer architecture and operating system
- Concepts of variables, data types, assignments, arithmetic operators, expressions
- Conditions, boolean logic, logical operators, ranges
- Control statements: if/else, loops (for, while)
- String manipulation: indexing, subscript operator, slicing, concatenating, converting strings to numbers and vice versa
- Running, Sharing, Reading, commenting and documenting programmes
- Functions: reducing redundancy and complexity; formal/actual arguments, named argument; program structure and design; recursive functions
- Sequences: Lists, tuples, byte sequences, byte arrays; iteration; basic list operators, replacing, inserting, removing, searching items
- Manipulating files; text files: reading/writing; formatted text files
Learning Outcomes: Subject Mastery
- Understanding, analysing and characterising an information processing problem
- Design an algorithm to solve problem in pseudocode
- Mastering procedural programming constructs: variables, types, operators, assignments
- Selecting appropriate control structures: conditional and iterative
- Designing modular programmes with functions, arguments and return
- Understanding and designing recursive functions
- Understanding the differences between compiled and interpreted languages and interpreting error messages
- Reading, commenting, and documenting a procedural program
- Writing programs with string processing
- Representing and manipulating data using lists and tuples
- Reading/writing text and numbers from/to flat and structured (e.g. CSV) files
- Installing interpreter, using interactive shell, editing, saving and running scripts using simple EDI (e.g. VS code)
- Sharing work with peers using version control systems
- Installing and operating debugger to track code execution
- Managing code in files and directories
Assessment Methods: Due to covid, assessment methods for Academic Year 2021-22 may vary from those noted on the official course descriptor. Please see the Computer Science Course Weightings and the Maths Course Weightings for 2020-21 Semester 1 assessment methods.
SCQF Level: 7.
Credits: 15.
