Refactorización/Añadir un parámetro

Añadir parámetro(C#)-Introducción

editar

Proviene de traducir su forma en ingles Add parameter,es uno de los usos comunes a la hora de refactorizar o ordenar y reestructurar el código a trabajar. En su forma más simple es reducir el uso de variables y facilitar la comprensión del código.(Opinión personal)

Agregar un parámetro para un objeto que puede transmitir esta información. http://sourcemaking.com/files/sm/images/10fig02.gif

Razones de uso

editar
Agregar parámetro es muy común refactorización , es una practica muy habitual a la hora de programar.

El motivo es simple. Tienes que cambiar el método, y el cambio requiere información que no fue aprobada antes, por lo que añadir un parámetro.

Ventajas y Desventajas

editar

Contra de dicha refactorización. A menudo tiene otras alternativas a la adición de un parámetro. Si está disponible, estas alternativas son mejores porque no conducen a aumentar la longitud de las listas de parámetros. Largas listas de parámetros huelen mal, ya que son difíciles de recordar y, a menudo implican grupos de datos.

Mira los parámetros existentes. ¿Se puede pedir a uno de los objetos de la información que necesita? Si no, ¿tendría sentido para darles un método para proporcionar esa información? ¿Qué estás usando la información? En caso de que el comportamiento sea en otro objeto, el que tiene la información? Mira los parámetros existentes y pensar en ellos con el nuevo parámetro. Tal vez usted debería considerar Introducir objetos.

Ejemplo de uso

editar

Antes de refactorizar:

   class Program
   { // Inicio de la clase
       static int edad;
       static void Main(string[] args)
       { // Inicia el metodo por defecto
           Console.WriteLine("¡Programa para probar el refactoring Add Parameter!");
           Console.Write("Ingrese su edad: ");
           edad = Convert.ToInt16(Console.ReadLine());
           calcularMeses();
           Console.Write("Sus meses vividos son: " + edad);
           Console.Read();
       } // Termina el metodo por defecto
       static void calcularMeses()
       {
           int meses = 12;
            edad = edad * meses;
       }
   } // Termina la clase


Despues de refactorizar:

   class Program
   { // Inicio de la clase
       static void Main(string[] args)
       { // Inicia el metodo por defecto
           Console.WriteLine("¡Programa para probar el refactoring Add Parameter!");
           Console.Write("Ingrese su edad: ");
           Console.Write("Sus meses vividos son: " + calcularMeses(Convert.ToInt16(Console.ReadLine())));
           Console.Read();
       } // Termina el metodo por defecto
       static int calcularMeses(int edad)
       {
           int meses = 12;
           return edad = edad * meses;
       }
   } // Termina la clase

Referencias(fuente)

editar

Tomado,basado y editado en referencia al archivo virtual: http://sourcemaking.com/refactoring/add-parameter