refactor
Reorganize without changing
Refactor is a programming term for restructuring existing code without changing what it does.
The goal is cleaner, more efficient, or more maintainable code: We spent a week refactoring the legacy codebase.
The practice treats code as something that can be improved incrementally, like editing prose for clarity while preserving meaning.
Rearrange fundamental organization
- rewriteRevise text substantially
- codebaseSoftware project's complete source
- modularizationDivision into interchangeable units
- decouplingRemoval of interdependence
abstraction · encapsulation · methods · classes · functions · subroutines · interfaces · inheritance
Ease of understanding text
- maintainabilityEase of ongoing repair
- clarityState of being understandable
- understandabilityEase of being grasped
- self-documentingDescribes its own function
legibility · comprehensibility · cohesion · modularity · testability · extensibility · reusability · anti-pattern
Changing how something's arranged
- revisionAltering to improve
- overhaulComplete systematic repair
- reworkModify something already made
- reengineerRedesign a process completely
redesign · streamlining · simplification · transformation · iteration · incremental · migration · modernization
restructure
Rearrange fundamental organization
- rewriteRevise text substantially
- codebaseSoftware project's complete source
- modularizationDivision into interchangeable units
decoupling · abstraction · encapsulation · methods · classes · functions · subroutines · interfaces · inheritance · polymorphism
readability
Ease of understanding text
- maintainabilityEase of ongoing repair
- clarityState of being understandable
- understandabilityEase of being grasped
self-documenting · legibility · comprehensibility · cohesion · modularity · testability · extensibility · reusability · anti-pattern
reorganization
Changing how something's arranged
reengineer · redesign · streamlining · simplification · transformation · iteration · incremental · migration · modernization · cleanup
IDE
Unified coding software suite
merge · commit · branch · linting · static-analysis
- software developmentcoding, programming, bug, debug, debugging
- computing verbsrun, execute, process, compute, calculate
- codefunction, source code, variable, array, class
- programmingvariables, functions, for, function, debugger
- dev culturedebug, bug, code review, pull request, git
- dev opsdeploy, build, test, commit, push
refactorkludge
Awkward but functional solution
cobble together · bodge · cut corners · make a mess · quick and dirty