際際滷

際際滷Share a Scribd company logo
noSOLIDevidence
howtotake
a5letteracronym
noonecanuse
andendwith
twophrasesyoucan
heyhihello
derek graham @deejaygraham
no SOLID evidence
no SOLID evidence
no SOLID evidence
no SOLID evidence
SOLID?
no SOLID evidence
no SOLID evidence
no SOLID evidence
CodeisHard
no SOLID evidence
Essential
& Accidental
Wat?
no SOLID evidence
no SOLID evidence
no SOLID evidence
SOLID,dude!
 Single Responsibility
 Open Closed
 Liskov Substitution
 Interface
Segregation
 Depedency Inversion
SOLID
Each item of code should have
a single responsibility
one reason to 界鞄温稼乙艶
Each software module has one,
and only one, reason to change
 Single Responsibility Cohesion
 Open Closed
 Liskov Substitution
 Interface Segregation
 Depedency Inversion
SOLID
Open for extension but
Closed for modification
Object-Oriented
Software
Construction
5PrinciplesofSoftware
Construction
Linguistic Modular Units
Self-Documentation
Uniform Access
Open-Closed
Single Choice
no SOLID evidence
Silhouette
 Single Responsibility Cohesion
 Open Closed Coupling
 Liskov Substitution
 Interface Segregation
 Depedency Inversion
SOLID
One subclass can be swapped
out for another
Liskov
Liskov
Liskov
Liskov
IEEE Von Neumann
ACM Turing
no SOLID evidence
 Single Responsibility Cohesion
 Open Closed Coupling
 Liskov Substitution Coupling
 Interface Segregation
 Depedency Inversion
SOLID
Many small, specific interfaces are better
than one general-purpose interface
 Single Responsibility Cohesion
 Open Closed Coupling
 Liskov Substitution Coupling
 Interface Segregation Cohesion
 Depedency Inversion
SOLID
Don't depend on concrete types,
depend on abstractions
 Single Responsibility Cohesion
 Open Closed Coupling
 Liskov Substitution Coupling
 Interface Segregation Cohesion
 Depedency Inversion Coupling
Connascence
 a change in one would require the
other to be modified in order to maintain
the overall correctness of the system
no SOLID evidence
SimpleDesign
Appropriate
Factored
Communicative
Minimal
Tests
Duplication
Clarity
Smallest
Tests
Duplication
Clarity
Smallest
Tests
Duplication
Clarity
Smallest
皆看
 Single Responsibility
 Open Closed
 Liskov Substitution
 Interface Segregation
 Depedency Inversion
 Single Responsibility Cohesion
 Open Closed Coupling
 Liskov Substitution Coupling
 Interface Segregation Cohesion
 Depedency Inversion Coupling
Cohesion
Coupling
Connascence
Tests
Duplication
Clarity
Smallest
Tests
Duplication
Clarity
Smallest
Notice and
Improve the
Names of
Things
@deejaygraham
no SOLID evidence

More Related Content

no SOLID evidence