Department of Computer Science, Unit Catalogue 2009/10
CM10228: Programming 1B
|Assessment:||CW 50%, EX 50%|
|Supplementary Assessment:||CM10228 Mandatory Extra Work (where allowed by programme regulations)|
|Requisites:||Before taking this unit you must take CM10227|
To continue the practice of the programming process begun in Programming IA. To extend the notion software development for more specific application areas. To increase practical skills at reading and writing programs and producing programs to solve real world problems and to provide students with further domain specific problem solving techniques. To increase further students' confidence levels of programming in the taught languages and about being able to learn different programming languages and programming paradigms. To further develop within the students the ability to distinguish between the underlying principles of computer programming against those that are development-environment or language specific. To provide students with further mechanisms to become independent learners who take control over their education rather passively taking in information.
On completion of this unit, students will be able to:
1. Understand the more advanced concepts of objection oriented programming.
2. Understand the basics of writing multi-threaded, server-client or database software.
3. Be able to design, construct and evaluate more complex data structures and algorithms.
4. Understand and appreciate the limits of computation.
Use of IT (T/F,A), Problem Solving (T/F,A), Communication (T/F,A).
* Large scale software development: strategies, software frameworks and design patterns.
* Design methods, code reuse and software maintenance.
* Event handling and multi-threading.
* Server Client, database and web-based applications.
* Graphical User Interfaces.
* Complex data-structures: trees and hash tables.