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 intr...
Learning Outcomes
Analyse, design, and implement software based solutions to problems using the specified object oriented programming language
Develop generic implementations of algorithms using the specified object oriented programming language
Compare and contrast different software designs based on principled quality criteria
Apply OOA/D techniques to the development of software solutions to real-world problems
Implement a selection of design patterns in the specified object oriented programming language
Understand a selection of design patterns and apply them to their software solutions