filmov
tv
Abstraction in Software Design

Показать описание
Abstractions are the most fundamental elements and the most important tenet of Software Design.
Yet, most of us can't explain it, or can't recognize good from bad abstractions. In this video I attempt to explain how to design abstractions as well as how to recognize weak and strong abstractions and when to even attempt to abstract.
Adapter Design Pattern (Code referenced in this video)
00:00 Intro
01:24 Don't Rush to Abstract
03:06 What is an Abstraction?
03:38 Too Much or Too Little Abstraction
04:45 Strong and Weak Abstractions
06:14 Purpose and Correct Level of an Abstraction
08:38 Too Little or Leaky Abstraction
09:15 The Right Level of Abstraction
09:51 An Example - Message Broker
12:31 Methods are Abstractions
13:23 Don't Rush to Abstract - Rule of Thirds
14:10 Don't use Bool arguments
15:50 Wait before you Lock Yourself into a Solution
17:06 Abstraction in Class Design
19:35 Code Example - Message Broker Abstraction
32:04 How to arrive at a Good Abstraction
33:03 Code Example - CosmosDb Abstraction
34:32 Graphs and Charts Abstraction
35:59 Clean Abstraction last longer
37:29 Code Example - CosmosDb Abstraction Continued
41:11 Abstractions work for you and not what they're hiding
42:22 Example of a Bad Abstraction
45:46 Too much Abstraction
45:57 Conclusion
Yet, most of us can't explain it, or can't recognize good from bad abstractions. In this video I attempt to explain how to design abstractions as well as how to recognize weak and strong abstractions and when to even attempt to abstract.
Adapter Design Pattern (Code referenced in this video)
00:00 Intro
01:24 Don't Rush to Abstract
03:06 What is an Abstraction?
03:38 Too Much or Too Little Abstraction
04:45 Strong and Weak Abstractions
06:14 Purpose and Correct Level of an Abstraction
08:38 Too Little or Leaky Abstraction
09:15 The Right Level of Abstraction
09:51 An Example - Message Broker
12:31 Methods are Abstractions
13:23 Don't Rush to Abstract - Rule of Thirds
14:10 Don't use Bool arguments
15:50 Wait before you Lock Yourself into a Solution
17:06 Abstraction in Class Design
19:35 Code Example - Message Broker Abstraction
32:04 How to arrive at a Good Abstraction
33:03 Code Example - CosmosDb Abstraction
34:32 Graphs and Charts Abstraction
35:59 Clean Abstraction last longer
37:29 Code Example - CosmosDb Abstraction Continued
41:11 Abstractions work for you and not what they're hiding
42:22 Example of a Bad Abstraction
45:46 Too much Abstraction
45:57 Conclusion
Комментарии