| || |
In this module students will be introduced to principles and practices of object oriented software analysis, design, and programming using modern object oriented programming languages, e.g. C#, Java or C++. The course will be delivered in two parts. The first part will focus on software development; taking students from the basics of the chosen object-oriented language, through to objected oriented and generic programming. The course assumes that students already have an introductory level of programming competency and be familiar with the basics of object oriented programming. The second part will cover the general principles object oriented analysis and design (OOA/D) and in particular the application of design patterns in developing well-structured, extensible, and reusable software systems. This module may be taught using a traditional or blended-learning approach.