Research Article

Exploring the Eradication of Code Smells: An Empirical and Theoretical Perspective

Table 3

Smells that were partially remedied.

Code smellNameRefactorings

3 Data ClassMove Method
Encapsulate Field
Encapsulate Collection

7 Feature EnvyMove Method
Move Field
Extract Method

8 Inappropriate IntimacyMove Method
Move Field
Change Bidirectional Association to Unidirectional
Replace Inheritance with Delegation
Hide Delegate

10 Large ClassExtract Class
Extract Subclass
Extract Interface
Replace Data Value with Object

19 Shotgun SurgeryMove Method
Move Field
Inline Class

20 Speculative GeneralityCollapse Hierarchy
Inline Class
Remove Parameter
Rename Method