Clean Code Course by Uncle Bob
2시간씩 온라인으로 1주에 하나의 주제씩
Clean Code 1: What does it mean to be clean?
The Fragile Premise.
The Grand Redesign.
Code Rot.
What is Clean Code?
Clean Code 2: Functions.
Some Bad Code.
Function size.
Do one thing.
Extract till you Drop.
Class Discovery.
Clean Code 3: Function Structure.
The Fan-out problem.
Avoiding Switch Statements.
Managing Function Arguments.
Side Effects and Temporal Couplings.
Command/Query Separation.
Exception Handling.
DRY
Structured Programming
Clean Code 4: Meaningful Names.
Length and Scope
Revealing Intent.
Disinformation.
Meaningful Distinctions.
Encodings.
Mappings.
Clean Code 5: Comments.
The proper use of comments.
Good Comments.
Bad Comments.
Clean Code 6: Formatting.
Formatting Matters.
Vertical Formatting.
Horizontal Formatting.
Coding Standards.
TDD 1: The Three Laws.
Discipline.
Why TDD?
Debugging.
Documentation.
Design.
Maintaining Control.
Clean Tests.
TDD 2: Specificity and Transformations.
What/how to test.
Getting Stuck.
Transformation Priority Premise.
TDD 3: Test Design.
Fragile Tests.
Decoupling tests and production code.
The specificity/generality division.
TDD 4: Mocking and Patterns.
Mocking History.
Dummies
Stubs
Spies
Mocks
Fakes.
Test Specific Subclass.
Self Shunt.
The Humble Object
TDD 5: The Big Picture.
When TDD works, and when it doesn’t.
Acceptance testing.
The testing pyramid.
Clean Agile 1: Executive Summary.
Agile Overview.
Planning in detail.
Clean Agile 2: Engineering.
TDD
Refactoring
Simple Design
Pairing/Mobbing
Continuous Build/Integration/Deployment
Summary.