Rename method

Rename Method is a refactoring that changes a name of a method into a new one, that better reveals its purpose.

To have clearer, more understandable code, programmers would optimally want to change method names to reflect exactly what the method does. For example:

 public int Add(int x){
     return x+1;
 }

would be better renamed as:

 public int AddOne(int x){
     return x+1;
 }

The function operates the same, but is now more easily readable for developers looking through the code. Note that in some cases there is little necessity for documentation of a simple function if the function or variable name is correct. In these cases the documentation is redundant and may be confusing as it may not match the variable or function name - leading the developer to be unsure as to which (the name or the documentation) is correct. Martin Fowler lists this as one of his refactorings at refactoring.com.

Take care

Although it seems to be very easy to change a method name, code can be broken if refactoring tools (built into many modern IDE's) are not used to also change all code that refers to the existing method.

If a codebase has provided an external API that including the existing method name then the existing function should not be removed, but 'deprecated' over time and finally removed at a future date. In this case the "Copy Method" refactoring can be considered as an alternative.

Java 5.0 provides the annotation @Override to help protect against mistakes such as this.#
gollark: Sounds very excessive, what do they need *3 years* for?
gollark: 3 years? How apioformic.
gollark: Wait, is all they're saying that you're getting a "free resource" which is probably a 10-page guide inferior to random ones on the internet‽
gollark: > military academyHow apiohazardous.
gollark: You must be one of those people in the "US", where there are more than 150ish universities.
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.