|
![]() | 2018/9 |
![]() | Department of Computer Science |
![]() | 6 [equivalent to 12 CATS credits] |
![]() | 120 |
![]() | Masters UG & PG (FHEQ level 7) |
![]() |
|
![]() | CW 50%, EX 50% |
![]() |
|
![]() |
|
![]() |
This unit is only available to apprentices on the Level 7 Digital and Technology Solution Specialist Apprenticeship
Before taking this module you must take CM50273 |
![]() | Aims: To continue the practice of the programming process begun in Principles of Programming (CM50273). To extend students' understanding of software development to include exogenous and endogenous error handling, defensive programming, hashing and searching. To further develop the practical skills needed to read programs, write programs, produce programs to solve real world problems and solve problems specific to the programming domain. To further increase students' ability to program in the specific languages taught and to prepare them to learn different programming languages and programming paradigms. To develop within students the ability to distinguish between underlying principles of computer programming (e.g. maintainability, efficiency, redundancy and robustness) and those that are development-environment or language specific. To provide students with further motivation and mechanisms to become independent learners who take control over their education rather passively taking in information. To provide students with a preliminary understanding of the roles and responsibilities of computer professionals. Learning Outcomes: On completion of this unit, students will be able to: 1. Understand the more advanced concepts of programming complete systems. 2. Understand the basics of writing multi-threaded, server-client and GUI software. 3. Design, construct, evaluate and analyse the efficiency of more complex data structures and algorithms. 4. Appreciate the limits of computation. 5. Have some understanding and appreciation of the problems and responsibilities of system delivery, maintenance, administration and relationship to users. Skills: Use of IT (T/F,A), Problem Solving (T/F,A), Communication (T/F,A). Content: Further development of understanding of procedural and object orientation programming paradigms illustrated using programming languages such as C and Java. Introduction to Design Patterns Introduction to complexity analysis. Introduction to more advanced data-structures and algorithms. Event handling, error handling, basic multi-threading and networking. Graphical User Interfaces. |
![]() |
CM50275 is Compulsory on the following programmes:Department of Computer Science
|
Notes:
|