smelles and refactoring

类别:编程语言 点击:0 评论:0 推荐:

整理了一下,有助于对代码进行refatoring。 

  Smells Within Classes

 

smells

refactoring

 

Comments

 

 

Long Method

Extract Method.

 

 

Large Class

Extract Class

Extract Subclass

 

 

Long Parameter List

Replace Parameter with Method

Preserve Whole Object

Introduce Parameter Object.

 

 

 

 

 

 

Smells Between Classes

 

Smells category

smells

refactoring

Data

 

 

 

Primitive Obsession

Replace Data Value with Object

Replace Type Code with Class

Replace Type Code with Subclasses

 Replace Type Code with State/Strategy.

 

 

Data Class

 

 

Data Clump

Extract Class

Introduce Parameter Object

Preserve Whole Object

 

 

Temporary Field

Extract Class

Introduce Null Object

 

Inheritance

 

 

 

Refused Bequest

Push Down Method

Push Down Field

Replace Inheritance with Delegation

 

Inappropriate Intimacy (Subclass Form)

Self Encapsulate Field

Form Template Method

Replace Inheritance with Delegation

 

Lazy Class

Collapse Hierarchy

Inline Class

Responsibility

 

 

 

Feature Envy

Move Method

 

Inappropriate Intimacy (General Form)

Move Method and Move Field

Extract Class and Hide Delegate

Change Bidirectional Association to Unidirectional

 

 

Message Chains

Extract Method

Move Method

Hide Delegate

 

Middle Man

Remove Middle Man

Replace Delegation with Inheritance

Accommodating Change

 

 

 

Divergent Change

 

 

Shotgun Surgery

 

 

Parallel Inheritance Hierarchies

 

 

Combinatorial Explosion

 

Library Classes

 

 

 

Incomplete Library Class

 

 

 

 

 

本文地址:http://com.8s8s.com/it/it26712.htm