Matlab

Herramientas para la refactorización en MATLAB

La refactorización es una parte fundamental del desarrollo de código para garantizar que este sea más legible y mantenible. Mediante la mejora de su estructura sin cambiar el comportamiento. En esta entrada, se analizarán las herramientas nativas que existen para la refactorización en MATLAB, con las que se puede convertir cualquier bloque de código en una función local o guardar en un archivo.

¿Qué es la refactorización de código?

La refactorización de código es un proceso mediante el cual se reestructura este sin cambiar su funcionalidad. Mejorando en el proceso la legibilidad, la mantenibilidad y la eficiencia del código, lo que conduce a soluciones de software más robustas y escalables. Siendo un proceso que se puede hacer manualmente, aunque los editores modernos incluyen funcionalidades con los que se puede automatizar el proceso.

¿Dónde encontrar la funcionalidad de refactorización en MATLAB?

La funcionalidad de refactorización de código se encuentra integrada en el editor de MATLAB. Se puede acceder a estas herramientas desde la pestaña ”Editor” en la barra de herramientas principal, y luego seleccionar ”Refactor”. Actualmente existen dos o opciones “Convert to Function” y “Convert to Local Function”, con las que se puede convertir cualquier pedazo de código en una función o función local respectivamente.

Funciones disponibles en MATLAB para la refactorización de código.

Convertir código en una función

La principal tarea de refactorización que automatizan las herramientas de Matlab en la extracción de funciones. Proceso por el que se puede convertir cualquier trozo de código en una función para que este se pueda reutilizar de forma sencilla. Facilitando la división del código en funciones más pequeñas y manejables, lo que mejora la modularidad y la reutilización del código.

Ejemplo: extraer una función local

Supongamos que tenemos una sección de código en la que se calcula el área de un círculo.

% Código original
radio = 5;
area = pi * radio^2;

En este caso, se podría refactorizar el código extrayendo una función para calcular el área del círculo. Aunque es un ejemplo pequeño, esto permite contar con una función que simplifique su reutilización. Los pasos para hacer esto seria:

  1. Selecciona el fragmento de código que calcula el área del círculo.
  2. Ir a la pestaña ”Editor”, pulsar sobre ”Refactor” y seleccionar la opción “Convert to Local Function”.
  3. En este punto el editor creará una función llamada untitled() cuyo nombre se puede renombrar a algo más significativo como calcularAreaCirculo().
Extracción del código en una función local con el nombre por defecto
  1. En este caso es necesario, como el valor area no se usa a continuación, la herramienta de refactorización no incluye la devolución del valor. Por lo que se debe revisar e indicar los parámetros que se necesita que sean devueltos por la función.
Extracción del código en una función local tras su renombrado e indicar el resultado que se van a devolver

Ejemplo: obtener una función

Alternativamente se puede crear una función en un archivo m para poder reutilizar este código en cualquier parte. En este caso la única diferencia es que al llamar al usar la función “Convert to Function se pide el nombre y la ruta del archivo.

Extracción la función en un archivo para su reutilización

Conclusiones

Las herramientas para la refactorización en MATLAB permiten mejorar la calidad del código de una forma eficaz. Aunque solamente existen herramientas para extraer funciones, no existe una función para renombrado de variables o funciones como en editores más avanzados, es algo que puede ser de ayuda cuando la complejidad de las funciones crece y se debe dividir estas en pedazos de código más manejables.

Imagen de Vilius Kukanauskas en Pixabay

¿Te ha parecido de utilidad el contenido?

Daniel Rodríguez

Share
Published by
Daniel Rodríguez

Recent Posts

De la Regresión Logística al Scorecard: La Transformación Matemática

En un entrada previa explicamos qué son el WOE y el IV y por qué…

19 horas ago

Analytics Lane lanza la versión 1.1 del laboratorio con nuevas suites de CLV y Scoring

Seguimos evolucionando el laboratorio de Analytics Lane y hoy lanzamos la versión 1.1, disponible en:…

2 días ago

Interés compuesto: la fuerza que multiplica tu dinero (y los errores que la anulan)

“El interés compuesto es la octava maravilla del mundo. El que lo entiende lo gana…

6 días ago

Cómo comparar datos con barras en Matplotlib: agrupadas, apiladas y porcentuales

Tienes los datos de ventas de tres productos en dos años distintos y quieres saber…

1 semana ago

Costes hundidos en ciencia de datos: cuándo mantener un modelo y cuándo migrar

Imagina la situación. Tu equipo lleva tres años con un modelo en producción. No es…

2 semanas ago

WOE e IV: La Base Matemática del Credit Scoring

Cuando un banco evalúa una solicitud de crédito necesita responder a una pregunta aparentemente simple:…

2 semanas ago

This website uses cookies.