Unit name | Programming and Algorithms 2A |
---|---|
Unit code | COMS10004 |
Credit points | 10 |
Level of study | C/4 |
Teaching block(s) |
Teaching Block 2 (weeks 13 - 24) |
Unit director | Dr. Burghardt |
Open unit status | Not open |
Pre-requisites |
COMS10002 Programming and Algorithms I |
Co-requisites |
none |
School/department | Department of Computer Science |
Faculty | Faculty of Engineering |
Developing software for diverse platforms increasingly requires an agile understanding and use of various programming approaches. The main aim of the unit is to ensure that students develop basic competence and confidence as a programmer, and start to develop skills to comprehend and analyse some key algorithms. The unit will familiarise students with some key intellectual tools to implement and analyse algorithms – quick code is no good if the algorithm it implements is slow! The object oriented programming paradigm will be studied and Java will be introduced as an example language. Theoretical content is complemented by incremental software development in increasingly complex projects.
Successful completion of this unit will enable students to:
Approx 18 lectures supported by programming labs (which should last no less than 2 hours during the project period)
50% coursework and 50% exam
The unit does not rely on a particular textbook. However, reading suggestions include the following books:
- Head First Java by Kathy Sierra and Bert Bates, 2nd Edition, O'Reilly Media, ISBN:0596009208
- Head First Design Patterns by Eric Freeman, Elisabeth Robson, Bert Bates, Kathy Sierra, O'Reilly Media, ISBN: 0000596007124
- Java Precisely by Peter Sestoft, 2nd Edition, MIT Press, ISBN: 9780262693257
- Introduction to Algorithms by Cormen, Leiserson, Rivest, Stein, 3rd Edition, MIT Press ISBN: 978-0262533058