Podcast
Questions and Answers
What is cohesion?
What is cohesion?
How closely the operations in a routine are related.
What is coupling?
What is coupling?
The strength of a connection between 2 routines.
What is couping a complement to?
What is couping a complement to?
Cohesion
What does cohesion describe?
What does cohesion describe?
What does coupling describe?
What does coupling describe?
How should you aspire to apply coupling & cohesion to your designs?
How should you aspire to apply coupling & cohesion to your designs?
Martin Fowler describes 3 different perspectives in the software development process? What are they?
Martin Fowler describes 3 different perspectives in the software development process? What are they?
Define the conceptual development perspective?
Define the conceptual development perspective?
Describe the specification development perspective.
Describe the specification development perspective.
Describe the implementation development perspective.
Describe the implementation development perspective.
What question does the conceptual perspective answer?
What question does the conceptual perspective answer?
What question does the specification perspective answer?
What question does the specification perspective answer?
What question does the implementation perspective answer?
What question does the implementation perspective answer?
Define an object at the conceptual level.
Define an object at the conceptual level.
Define an object at the specification level.
Define an object at the specification level.
Define an object at the implementation level.
Define an object at the implementation level.
Define abstract class.
Define abstract class.
Define classes.
Define classes.
Define a concrete class
Define a concrete class
Define encapsulation.
Define encapsulation.
Define inheritance.
Define inheritance.
Flashcards
Cohesion
Cohesion
How closely the operations in a routine are related.
Coupling
Coupling
The strength of a connection between 2 routines.
Coupling complements what?
Coupling complements what?
Cohesion
Cohesion Describes...
Cohesion Describes...
How strongly the internal contents of a routine are related to each other.
Signup and view all the flashcards
Coupling Describes...
Coupling Describes...
How strongly a routine is related to other routines.
Signup and view all the flashcards
Design Goal: Coupling & Cohesion
Design Goal: Coupling & Cohesion
Create routines with internal integrity (strong cohesion) and small, direct, visible, and flexible relations to other routines (loose coupling).
Signup and view all the flashcards
Facade Pattern
Facade Pattern
Provide a unified interface to a set of interfaces in a subsystem. Facade defines a higher-level interface that makes the subsystem easier to use.
Signup and view all the flashcards
Adapter Pattern.
Adapter Pattern.
Converts the interface of a class into another interface that the clients expect. Adapter let's classes work together that could not otherwise because of incompatible interfaces.
Signup and view all the flashcards
Strategy Pattern
Strategy Pattern
Defines a family of algorithms, encapsulates each one, and makes them interchangeable. Strategy let's the algorithm vary independently from clients that use it.
Signup and view all the flashcards
GOF's 3 principals to anticipate change.
GOF's 3 principals to anticipate change.
Program to an interface. Favor object aggregation over class inheritance. Encapsulate the concept that varies.
Signup and view all the flashcards