Module Details
Module Code: |
PRAC |
Module Title:
|
Object Oriented Programming
|
Title:
|
Object Oriented Programming
|
Module Level:: |
6 |
Module Coordinator: |
Nigel Whyte
|
Module Author:: |
Ross Palmer
|
Module Description: |
To provide learners with object-oriented programming skills and use object-oriented techniques to solve problems of moderate complexity.
|
Learning Outcomes |
On successful completion of this module the learner will be able to: |
# |
Learning Outcome Description |
LO1 |
Develop small components in C++ using the object-oriented paradigm. |
LO2 |
Demonstrate a practical knowledge of memory allocation and the application of pointers, smart pointers and references. |
LO3 |
Use a profiling tool to identify potential bottlenecks in an application. |
Dependencies |
Module Recommendations
This is prior learning (or a practical skill) that is recommended before enrolment in this module.
|
No recommendations listed |
Co-requisite Modules
|
No Co-requisite modules listed |
Additional Requisite Information
|
No Co Requisites listed
|
Indicative Content |
Introduction and language features
Compilation process, IO and standard libraries, addresses and pointers, fundamental language features (type checking, cast operators, function overloading, default function arguments, enumerations)
|
OOP core concepts part 1
Classes, members and construction functions, composition, header file organisation.
|
OOP core concepts part 2
Inheritance: generalisations, specialisation, abstract classes and polymorphism, RTTI operators.
|
Memory management
Operators new, delete and delete [], rule of three, smart pointers, move semantics (rule of five).
|
Optimising code
Performance and optimisations, introduction to profiling.
|
Module Content & Assessment
|
Assessment Breakdown | % |
Continuous Assessment | 20.00% |
Practical | 40.00% |
End of Module Formal Examination | 40.00% |
AssessmentsFull Time
End of Module Formal Examination |
|
Reassessment Requirement |
Repeat examination
Reassessment of this module will consist of a repeat examination. It is possible that there will also be a requirement to be reassessed in a coursework element.
|
SETU Carlow Campus reserves the right to alter the nature and timings of assessment
Module Workload
Workload: Full Time |
Workload Type |
Workload Category |
Contact Type |
Workload Description |
Frequency |
Average Weekly Learner Workload |
Hours |
Lecture |
|
Contact |
No Description |
12 Weeks per Stage |
1.00 |
12 |
Laboratory |
|
Contact |
No Description |
12 Weeks per Stage |
4.00 |
48 |
Estimated Learner Hours |
|
Non Contact |
Estimated Learner Hours |
15 Weeks per Stage |
4.33 |
65 |
Total Weekly Contact Hours |
5.00 |
Module Resources
|
Recommended Book Resources |
---|
-
Overland, B.. (2015), C++: Without Fear, Third. Prentice Hall, [ISBN: 978-013431430].
| Supplementary Book Resources |
---|
-
Stroustrup, B.. (2014), Programming: Principles and Practice Using C++, Second. Addison Wesley, [ISBN: 978-032199278].
| This module does not have any article/paper resources |
---|
Other Resources |
---|
-
Microsoft. C++ Language Reference,
-
C++ reference,
-
Tutorial series,
-
Chacon, S and Straub, B.. (2014), Pro Git,
|
|