Midterm Superdeck Flashcards
(107 cards)
What is procedural programming?
Methods/functions calling each other.
Downside of procedural programming?
It can become unmanageable/harder to manage as they become larger.
How does OOP handle complexity?
Decomposition. Design objects to contain data and related behaviors.
Benefits of OOP?
Maintainability and extensibility.
What is a class.
A blueprint or instruction on how to make an object.
What is an object.
An instance of a class that has been created.
What is a field?
An attribute. Data relevant to the systems purpose.
What is an entity?
Models a real “thing”.
What is a container?
A data structure to hold entities.
What is an interface?
Communicates with the “outside world”.
What is a control object?
Organizes computation.
I.e. The main program.
Types of entitites?
Concrete objects. People, buildings, etc.
Conceptual objects. Organizations, agreements, etc.
Event and state-change objects. I.e. purchase, sale, birth.
Types of methods.
Accessors/getters.
Mutators/setters.
Hybrid. Access and mutate, but this is discouraged.
5 stages to software development.
Requirements.
Design.
Implementation.
System testing and verification.
Maintenance.
UMLs describe…
What it does, not how.
What is a primary actor?
Triggers a use case to happen.
What is a supporting actor?
Indirectly involved with a use case. I.e. A user (primary actor) tries to withdraw money. The bank (supporting actor) verifies there’s enough money.
Extends. (non-class uml)
Base use case may conditionally execute the associated use case. Dashed line, solid arrow, «extend» in the middle
Include.
The base case will always execute the associated use case. Dashed line, solid arrow, «include» in the middle.
Generalization. (non-class uml)
A child use case inherits from parent. Solid line, hollow arrow, from child to parent.
Visibility symbols in UML.
+ public
- private
# protected
Class UML inheritance.
Solid line, hollow arrow, child to parent.
Class UML generalization.
Dashed line, hollow arrow, “child to parent”. “Class B implements A”.
Class UML association.
A and B call eachother.
Solid line.