Unit name | Object Orientated and Functional Programming |
---|---|
Unit code | COMS12400 |
Credit points | 10 |
Level of study | C/4 |
Teaching block(s) |
Teaching Block 2 (weeks 13 - 24) |
Unit director | Dr. Holyer |
Open unit status | Not open |
Pre-requisites |
COMS11300 Procedural Programming |
Co-requisites |
None |
School/department | Department of Computer Science |
Faculty | Faculty of Engineering |
This unit aims to build on previous procedural programming skills by introducing object orientated programming and functional programming. It also covers basic theoretical and software engineering principles involved in programme design and development.
The main aim of the unit is to ensure that students are confident and competent programmers. Principles of software engineering and agile development are introduced in a practical way by good example. Topics include Java programming, Haskell programming, evaluating and using standard data structures and algorithms from software libraries, program design and testing, software engineering, and agile development techniques.
Successful completion of this unit will enable a student to:
2 hours of lectures per week, 3 hours per week of supervised lab work, plus further personal study to complete programming exercises.
All coursework
Any introductory book on Java programming can be used. For Haskell, the recommended book is:
Thompson. Haskell: The Craft of Functional Programming, 2nd or 3rd edition. Addison-Wesley. 1999. ISBN: 0201342758 Recommended.