2. The Object-Oriented Paradigm#
Legend
Here - found in the module
Moved - found in a different module
Implicit - covered by the process of completing this or a different module
Coming Soon - to be provided at a later date
Not Planned - not covered in this book
2.1. Understanding OOP#
Apply the key features of an object-oriented programming (OOP) language
Including:
objects
encapsulation
abstraction
inheritance
generalisation
polymorphism
Compare procedural programming with OOP
Implicitly covered by completing the module. Object oriented programming is complementary to procedural programming, not exclusive.
Use data flow diagrams, structure charts and class diagrams to represent a system
Data flow diagrams
Coming soon.
Structure charts
Covered earlier Structure Charts
Class diagrams
Coming soon.
Describe the process of design used to develop code in an OOP language
Coming soon.
Including:
task definition
Coming soon.
top-down and bottom-up
Coming soon.
facade pattern
Coming soon.
agility
Coming soon.
Assess the effectiveness of programming code developed to implement an algorithm
Covered in Algorithms and Code Design.
Investigate how OOP languages handle message-passing between objects
Coming soon.
Explain code optimisation in software engineering
Coming soon.
Outline the features of OOP that support collaborative code development
Coming soon.
Including:
consistency
Coming soon.
code commenting
Coming soon.
version control
Coming soon.
feedback
Coming soon.
2.2. Programming In OOP#
Design and implement computer programs involving branching, iteration and functions in an OOP language for an identified need or opportunity
Implicitly covered by completing the module.
Implement and modify OOP programming code
Implicitly covered by completing the module.
Including:
clear and uncluttered mainline
Coming soon.
one logical task per subroutine
Coming soon.
use of stubs
Coming soon.
use of control structures and data structures
Coming soon.
ease of maintenance
Coming soon.
version control
Coming soon.
regular backup
Coming soon.
Apply methodologies to test and evaluate code
Coming soon.
Including:
unit, subsystem and system testing
Coming soon.
black, white and grey box testing
Coming soon.
quality assurance
Coming soon.