You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Técnicas de refactoring aplicables a este proyecto: Rename method
En la clase File.java
Diseño inicial:
El nombre actual del método puede no ser suficientemente claro para indicar qué tipo de transacción se refiere o qué implica exactamente el "tiempo de transacción". Renombrar este método a un nombre más descriptivo podría ayudar a mejorar la claridad del código.
Rediseño:
Este cambio hace explícito que el método establece el tiempo asociado con operaciones de archivo, como agregar, eliminar o recuperar archivos, lo cual puede ser más relevante en contextos donde la precisión en el manejo y la trazabilidad del tiempo son críticos.
Encapsulate field
En la clase Resource en Cloudet.java
Diseño inicial:
Los campos de la clase Resource eran públicos, lo que significa que podían ser accedidos y modificados directamente desde fuera de la clase.
Rediseño:
Los campos de la clase Resource ahora son privados lo que impide el acceso directo desde fuera de la clase.
Se han añadido métodos get y set para cada campo, lo que permite el acceso controlado a estos campos.
Consolidate Conditional Expression
En la clase File.java
Diseño inicial:
Hay dos condicionales separados que lanzan diferentes excepciones dependiendo del valor de fileSize. Ambos condicionales verifican si fileSize está fuera de un rango válido y lanzan excepciones con mensajes diferentes.
Rediseño:
Se combinan las dos expresiones condicionales en una sola usando el operador lógico ||. Se simplifica el código al lanzar una única excepción IllegalArgumentException con un mensaje más general.
Introduce Parameter Object
En la clase Cloudet.java
Diseño inicial:
En el método setResourceParameter, se pasaban tres parámetros relacionados: resourceID, costPerCPU, y costPerBw. Estos parámetros se utilizan para configurar los atributos de un objeto.
Rediseño:
Se ha creado una nueva clase ResourceParameters que encapsula los tres parámetros mencionados (resourceID, costPerCPU, costPerBw).
El método setResourceParameter ahora toma un objeto de tipo ResourceParameters como argumento en lugar de tres parámetros separados.
Introduce Assertion
En la clase cloudet.java
Diseño inicial:
El método setCloudletLength simplemente asigna el valor del parámetro cloudletLength al campo correspondiente de la clase sin ninguna validación.
Rediseño:
Se introduce una aserción para verificar que cloudletLength sea mayor que 0 antes de asignarlo al campo de la clase.
Si la condición no se cumple, el programa lanzará un error de aserción con un mensaje que explica la falla.
The text was updated successfully, but these errors were encountered:
Técnicas de refactoring aplicables a este proyecto:
Rename method
En la clase File.java
Diseño inicial:
El nombre actual del método puede no ser suficientemente claro para indicar qué tipo de transacción se refiere o qué implica exactamente el "tiempo de transacción". Renombrar este método a un nombre más descriptivo podría ayudar a mejorar la claridad del código.
Rediseño:
Este cambio hace explícito que el método establece el tiempo asociado con operaciones de archivo, como agregar, eliminar o recuperar archivos, lo cual puede ser más relevante en contextos donde la precisión en el manejo y la trazabilidad del tiempo son críticos.
Encapsulate field
En la clase Resource en Cloudet.java
Diseño inicial:
Los campos de la clase Resource eran públicos, lo que significa que podían ser accedidos y modificados directamente desde fuera de la clase.
Rediseño:
Los campos de la clase Resource ahora son privados lo que impide el acceso directo desde fuera de la clase.
Se han añadido métodos get y set para cada campo, lo que permite el acceso controlado a estos campos.
Consolidate Conditional Expression
En la clase File.java
Diseño inicial:
Hay dos condicionales separados que lanzan diferentes excepciones dependiendo del valor de fileSize. Ambos condicionales verifican si fileSize está fuera de un rango válido y lanzan excepciones con mensajes diferentes.
Rediseño:
Se combinan las dos expresiones condicionales en una sola usando el operador lógico ||. Se simplifica el código al lanzar una única excepción IllegalArgumentException con un mensaje más general.
Introduce Parameter Object
En la clase Cloudet.java
Diseño inicial:
En el método setResourceParameter, se pasaban tres parámetros relacionados: resourceID, costPerCPU, y costPerBw. Estos parámetros se utilizan para configurar los atributos de un objeto.
Rediseño:
Se ha creado una nueva clase ResourceParameters que encapsula los tres parámetros mencionados (resourceID, costPerCPU, costPerBw).
El método setResourceParameter ahora toma un objeto de tipo ResourceParameters como argumento en lugar de tres parámetros separados.
Introduce Assertion
En la clase cloudet.java
Diseño inicial:
El método setCloudletLength simplemente asigna el valor del parámetro cloudletLength al campo correspondiente de la clase sin ninguna validación.
Rediseño:
Se introduce una aserción para verificar que cloudletLength sea mayor que 0 antes de asignarlo al campo de la clase.
Si la condición no se cumple, el programa lanzará un error de aserción con un mensaje que explica la falla.
The text was updated successfully, but these errors were encountered: