• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Jeanne Boyarsky
  • Ron McLeod
  • Paul Clapham
  • Liutauras Vilda
Sheriffs:
  • paul wheaton
  • Rob Spoor
  • Devaka Cooray
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
  • Frits Walraven
  • Tim Moores
Bartenders:
  • Mikalai Zaikin

What is refactoring?

 
Ranch Hand
Posts: 18944
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Sorry for the ignorance. But what exactly is refactoring and why do I need it?
 
Ranch Hand
Posts: 919
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Refactoring is a technique to make the process of software 'maintenance' less painful. Look at Martin Fowler's excellent site Techniques for Object Oriented Analysis and Design to learn more.
I hope that helps.
 
Greenhorn
Posts: 23
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Refactoring or Factoring is the process of placing common code in one spot to avoid having to maintaain it in multiple spots.
See page 179 in "Object-Oriented Software Development Using Java" by Xiaoping Jia
------------------
"Hierro candente, batir de repente"
 
Ranch Hand
Posts: 57
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Thanx George ,
I was also looking for the material like this.

Thanx a lot
Deepika
 
Sheriff
Posts: 7001
6
Eclipse IDE Python C++ Debian Java Linux
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
While refactoring and factoring have a lot in common, the reduction of code size and complexity by applying "once and only once" is only one aspect of refactoring, albeit one that's easy to grasp. Other major aspects of refactoring include ensuring that each method is associated with the appropriate object, and that each class in the class hierarchy has the right set of responsibilities.
The essence of refactoring, compared to other forms of software design is that it can be done in a series of very small, carefully chosen steps, each of which only affects the dsign of the software, not its functionality. Example refactorings might be moving a method from one class to another or creating a new base class for two classes which share some concepts. Both of these affect the design of the software, and thus its understandability, and thus its maintenance cost, but they have no effect on the function of the software.
reply
    Bookmark Topic Watch Topic
  • New Topic