What, Why, When Refactoring
Adrian Adendrata
Software Engineer at DOKU
ONE WEEK ONE MONTH ONE YEAR
DEVELOPMENT PHASE
Software Architecture Conference – 27 October 2018
ONE WEEK ONE MONTH ONE YEAR
DEVELOPMENT PHASE
Software Architecture Conference – 27 October 2018
What
What Is Refactoring?
Refactoring is process of changing a software system is
such a way that it does not alter the external behavior of code yet
improve its internal structure.
● Maintainability
● Extensibility
● Readability
Software Architecture Conference – 27 October 2018
Why
Improves the Design
of Software.
Without refactoring, the design of the
program will decay
Software Architecture Conference – 27 October 2018
Software Easier to
Understand.
The trouble is that when you are trying to
get the program to work, you are not
thinking about that future developer
Software Architecture Conference – 27 October 2018
Helps You
Program Faster.
A good design is essential to
maintaining speed in software
development.
Software Architecture Conference – 27 October 2018
Helps You Find Bugs.
“I'm not a great programmer. I'm just a
good programmer with great habits”
-Kent Beck
Software Architecture Conference – 27 October 2018
When
When Adding a
new Function.
Adding this feature would be easy.
Software Architecture Conference – 27 October 2018
When You Fix a
Bug.
Software Architecture Conference – 27 October 2018
When you Code
Review.
Reviews help more experienced
developers pass knowledge to less
experienced people
Software Architecture Conference – 27 October 2018
Refactoring: Improving the
Design of Existing Code (Object
Technology Series)
Martin Fowler (Author),
Kent Beck (Author),
John Brant (Author),
William Opdyke (Author),
Don Roberts (Author)
THX

2018.10.27 sarcom conf refactoring

  • 1.
    What, Why, WhenRefactoring Adrian Adendrata Software Engineer at DOKU
  • 2.
    ONE WEEK ONEMONTH ONE YEAR DEVELOPMENT PHASE Software Architecture Conference – 27 October 2018
  • 3.
    ONE WEEK ONEMONTH ONE YEAR DEVELOPMENT PHASE Software Architecture Conference – 27 October 2018
  • 4.
  • 5.
    What Is Refactoring? Refactoringis process of changing a software system is such a way that it does not alter the external behavior of code yet improve its internal structure. ● Maintainability ● Extensibility ● Readability Software Architecture Conference – 27 October 2018
  • 6.
  • 7.
    Improves the Design ofSoftware. Without refactoring, the design of the program will decay Software Architecture Conference – 27 October 2018
  • 8.
    Software Easier to Understand. Thetrouble is that when you are trying to get the program to work, you are not thinking about that future developer Software Architecture Conference – 27 October 2018
  • 9.
    Helps You Program Faster. Agood design is essential to maintaining speed in software development. Software Architecture Conference – 27 October 2018
  • 10.
    Helps You FindBugs. “I'm not a great programmer. I'm just a good programmer with great habits” -Kent Beck Software Architecture Conference – 27 October 2018
  • 11.
  • 12.
    When Adding a newFunction. Adding this feature would be easy. Software Architecture Conference – 27 October 2018
  • 13.
    When You Fixa Bug. Software Architecture Conference – 27 October 2018
  • 14.
    When you Code Review. Reviewshelp more experienced developers pass knowledge to less experienced people Software Architecture Conference – 27 October 2018
  • 17.
    Refactoring: Improving the Designof Existing Code (Object Technology Series) Martin Fowler (Author), Kent Beck (Author), John Brant (Author), William Opdyke (Author), Don Roberts (Author)
  • 19.