Please enable JavaScript.
Coggle requires JavaScript to display documents.
Refactoring (Mutable data (Remove Setting method :check: (Change function…
Refactoring
Mutable data
Encapsulate variable :check:
Split variable :warning:
Slide statements :check:
Extract function :check:
Separate query from modifier :no_entry:
Remove Setting method :check:
Change function declaration :check:
Inline function :check:
Replace derived variable with query :no_entry:
Combine functions into class :check:
Change reference to value :no_entry:
Long function
Extract function :check:
Replace Temp with Query :no_entry:
Introduce parameter object :check:
Change function declaration :check:
Preserve whole object :check:
Remove dead code :warning:
Inline function :check:
Replace function with command :no_entry:
Decompose conditional :no_entry:
Replace conditional with polymorphism :check:
Extract function :check:
Split loop :warning:
Shotgun surgery
Move function :check:
Move field :check:
Introduce assertion :no_entry:
Combine functions into class :check:
Combine functions into transform :check:
Extract function :check:
Split phase :check:
Inline function :check:
Inline class :check:
Long parameter list
Replace parameter with query :no_entry:
Preserve whole object :check:
Introduce parameter object :check:
Remove flag argument :no_entry:
Combine functions into class :check:
Encapsulate record :no_entry:
Move function :check:
Extract function :check:
Primitive obsession
Replace primitive with object :no_entry:
Replace conditional with polymorfism :check:
Replace type code with subclasses :check:
Replace constructor with factory function :warning:
Push down method :no_entry:
Replace conditional with polymorfism :check:
Extract class :check:
Introduce parameter object :check:
Speculative generality
Collapse hierarchy :check:
Inline class :check:
Inline function :check:
Change function declaration :check:
Remove dead code :warning:
Insider trading
Move function :check:
Move field :check:
Hide delegate :check:
Replace subclass with delegate :check:
Replace superclass with delegate :check:
Data class
Encapsulate record :no_entry:
Remove settings method :check:
Move function :check:
Extract function :check:
Split phase :check:
Divergent change
Move function :check:
Inline function :check:
Split phase :check:
Move statements to callers :no_entry:
Extract function :check:
Extract function :check:
Extract class :check:
Move field :check:
Move function :check:
Change reference to value :no_entry:
Middle man
Remove middle man :no_entry:
Inline function :check:
Replace superclass with delegate :check:
Replace subclass with delegate :check:
Replace constructor with factory function :warning:
Move function :check:
Remove dead code :warning:
Extract superclass :check:
Refused bequest
Push down method :no_entry:
Push down field :no_entry:
Replace subclass with delegate :check:
Replace superclass with delegate :check:
Mysterious name
Change function declaration :check:
Extract function :check:
Inline function :check:
Rename variable :warning:
Rename field :no_entry:
Duplicated code
Extract function :check:
Replace inline code with function call :no_entry:
Slide statements :check:
Pull up method :no_entry:
Data clumps
Extract class :check:
Introduce parameter object :check:
Preserve whole object :check:
Lazy element
Inline function :check:
Inline class :check:
Collapse hierarchy :check:
Pull up field :no_entry:
Push down field :no_entry:
Pull up method :no_entry:
Push down method :no_entry:
Temporary field
Extract class :check:
Move function :check:
Introduce special case :warning:
Message chains
Hide delegate :check:
Extract function :check:
Move function :check:
Large class
Extract class :check:
Extract superclass :check:
Change function declaration :check:
Pull up constructor body :no_entry:
Pull up method :no_entry:
Pull up field :no_entry:
Extract function :check:
Replace type code with subclasses :check:
Alternative classes with different interfaces
Change function declaration :check:
Move function :check:
Extract superclass :check:
Comments
Extract function :check:
Change function declaration :check:
Introduce assertion :no_entry:
Feature envy
Move function :check:
Extract function :check:
Global data
Encapsulate variable :check:
Encapsulate record :no_entry:
Repeated switches
Replace conditional with polymorphism :check:
Loops
Replace loop with pipeline :no_entry: