Difference between revisions of "Refactor code"
Jump to navigation
Jump to search
(Zeroth version.) |
(+= {{quote|Refactoring is something that be done opportunistically, as a regular part of your programming work.|Martin Fowler}}) |
||
(9 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
{{Oyster | {{Oyster | ||
|goal=sustain a minimal and elegant code base with top-notch quality | |||
|stage=Sparkle | |stage=Sparkle | ||
|theme=Agile, Extreme Programming | |theme=Agile, Extreme Programming, Quality | ||
|context=product development, completing {{p|product backlog item}}s | |context=product development, completing {{p|product backlog item}}s. | ||
|wish | |wish=A small code base contains less bugs and takes less effort to maintain. | ||
| | |so=Take every opportunity to eliminate redundant code and rewrite code, making it more elegant. | ||
|wish=A small code base contains less bugs and | |wish full=A small code base contains less bugs and takes less effort to maintain. You can invest the extra time in building out your product and profit. | ||
|background=Refactoring encompasses any changes to the system that leaves its behavior | |background=Refactoring encompasses any changes to the system that leaves its behavior unchanged while enhancing nonfunctional quality (i.e. simplicity, flexibility, understandability, or performance). | ||
|therefore=Take every opportunity to eliminate redundant code and rewrite code, making it more elegant. | |||
Not gardening your code will eventually snap you into firefighting mode. See {{p|firefight no more}}. | |||
|therefore full=Take every opportunity to eliminate redundant code and rewrite code, making it more elegant. | |||
|new={{p|focus on quality and speed will follow}} | |||
}} | |||
{{quote|The cost of a story includes providing the capability and maintaining a healthy codebase for future work.|Martin Fowler}} | |||
{{quote|Refactoring is something that be done opportunistically, as a regular part of your programming work.|Martin Fowler}} | |||
==Sources== | |||
{{WebSourceListItem | |||
|url=http://xprogramming.com/articles/refactoring-not-on-the-backlog/ | |||
|site=XProgramming | |||
|person=Ron Jeffries | |||
|title=Refactoring — Not on the backlog! | |||
}} | |||
{{WebSourceListItem | |||
|url=http://martinfowler.com/bliki/OpportunisticRefactoring.html | |||
|site=Martin Fowler | |||
|person=Martin Fowler | |||
|title=Opportunistic Refactoring | |||
}} | }} | ||
{{Source | {{Source | ||
|author=Martien van Steenbergen, | |author=Martien van Steenbergen, | ||
|coder={{mvs}} | |coder={{mvs}} | ||
}} | }} |
Latest revision as of 17:26, 30 July 2014
…product development, completing product backlog items.
✣ ✣ ✣
A small code base contains less bugs and takes less effort to maintain. You can invest the extra time in building out your product and profit.
Refactoring encompasses any changes to the system that leaves its behavior unchanged while enhancing nonfunctional quality (i.e. simplicity, flexibility, understandability, or performance).
Not gardening your code will eventually snap you into firefighting mode. See firefight no more.
Therefore:
Take every opportunity to eliminate redundant code and rewrite code, making it more elegant.
✣ ✣ ✣
focus on quality and speed will follow
✣ ✣ ✣
- The cost of a story includes providing the capability and maintaining a healthy codebase for future work.
- Refactoring is something that be done opportunistically, as a regular part of your programming work.
Sources
- XProgramming » Ron Jeffries » Refactoring — Not on the backlog!
- Martin Fowler » Martin Fowler » Opportunistic Refactoring