Software Architecture & Design Patterns Flashcards
6 cards from real B.S.W.E. Bachelor of Software Engineering practice questions. Tap to flip, then mark Knew It or Still Learning — missed cards come back until you master them.
Read the first 6 Software Architecture & Design Patterns flashcards as text
What is the main purpose of the Repository pattern?
Answer: To abstract data access logic from business logic
The Repository pattern abstracts the data layer, providing a clean API for data access to the business logic without exposing persistence details.
Which architectural style uses stateless communication over HTTP?
Answer: REST
REST (Representational State Transfer) uses stateless HTTP communication with standard methods like GET, POST, PUT, and DELETE.
What is 'cohesion' in software design?
Answer: How well elements within a module belong together
Cohesion measures how strongly related and focused the responsibilities of a single module are — high cohesion is preferred.
Which SOLID principle states a class should have only one reason to change?
Answer: Single Responsibility Principle
The Single Responsibility Principle states that a class should have only one responsibility and thus only one reason to change.
What is the Observer pattern used for?
Answer: Notifying multiple objects about state changes
The Observer pattern defines a one-to-many dependency where multiple observers are automatically notified when the subject's state changes.
Which architectural pattern is best suited for event-driven applications?
Answer: Event-Driven Architecture
Event-Driven Architecture (EDA) is designed around the production, detection, and consumption of events for loosely coupled systems.