3.5 Component-level Design Flashcards

(26 cards)

1
Q

It is done after other lower-level software designs are completed and typically applied on complex system interactions using flowcharts or sequence diagrams.

A

Procedural Design
(Structured, Sequence, Condition, Repetition)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

It is an implicit process of defining classes or modules, internal data structures, internal responsibilities and interfaces

A

Component-Level Design

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

It is a tried and tested solution to some of the commonly occurring problems in software design. Popular in Java but is also applicable in programming languages supporting OOP

A

Design Pattern

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

It provides various object creation mechanisms, which increase flexibility and reuse of existing code.

A

Structural Patterns

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

It ensured that only one instance of a class exists and offers a unified access point to it.

A

Singleton

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

It allows subclasses to supply concrete implementations that specify the exact object type to be instantiated

A

Factory Method

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

It allows the creation of related objects sharing the same interfaces without specifying their exact types

A

Abstract factory

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

It allows the step by step construction of complex objects to produce different types of representations using the same code

A

Builder

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

It enables object creation through cloning of existing instances, reducing the need for direct instantiation of new objects

A

Prototype

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

It explains how to assembly objects and classes into larger structures, while keeping these structures flexible and efficient.

A

Structural Design Patterns

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

It enables seamless interaction between objects with incompatible interfaces

A

Adapter

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

It simplifies interactions with complex systems by providing a unified interface

A

Facade

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

It attaches new behaviors to objects by wrapping in a special object that adds new functionality

A

Decorator

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Other structural Patterns

A

Proxy

Bridge

Composite

Flyweight

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

It deals with algorithms and the distribution of responsibilities among objects

A

Behavioral Design Patterns

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Behavioral Patterns (10)

A

Iterator

Chain of responsibility

Observer

Mediator

State

Strategy

Template Method

Visitor

Command

Memento

17
Q

This behavioral pattern traverses a collection without exposing its structure

18
Q

This behavioral pattern sends a request through handlers for processing

A

Chain of responsibility

19
Q

This behavioral pattern allows multiple observers to react to state changes.

20
Q

This centralizes communication between objects

21
Q

This allows change in behavior based on its internal state

22
Q

This enables algorithm selection at runtime for flexibility

23
Q

This defines a skeleton, allowing subclasses to override steps

A

Template method

24
Q

This enables new operations without class changes

25
This encapsulates a request as an object
Command
26
This saves and restores previous states of an object
Memento