Categorías: Todo - documentación - código - java - programación

por Raymundo Perfecto Fabros Serwelas hace 1 año

152

DOCUMENTACIÓN

La documentación interna en programación es esencial para mantener la claridad y el control sobre el desarrollo del código. En el contexto de Java, se utilizan diferentes tipos de comentarios para distintos propósitos, incluyendo la explicación de métodos y clases.

DOCUMENTACIÓN

REFACTORIZACIÓN

Pasos a seguir:

CODIFICACIÓN
DEPURACIÓN Y PRUEBA

Adaptación del código para hacerlo más legible y facilitar su mantenimiento

Verificar que hace lo que se desea

Escribir el código

¿QUÉ NO ES REFACTORIZAR?

NO es añadir funcionalidades
- No cambiamos el comportamiento observable del código - Útil para el mantenimiento
- No es aumentar la velocidad del programa - Eso es optimizar el software - Es aumentar el rendimiento del programador
NO es buscar errores en código
- El código ya debe funcionar - Eso es depurar - Sin embargo facilitará la depuración

Técnica para reestructurar el código fuente, modificando la interna, sin alterar su comportamiento externo.

TÉCNICAS DE REFACTORIZACIÓN
Conjunto de herramientas

CATEGORÍAS DE REFACTORIZACIÓN

NIVEL CLASE

REFACTORIZACIÓN DE MOVER CAMPOS

- Antes de mover campos

- No acceder a variables sino a través de getters y setters

- Usar getters y setters

CONDICIONALES

DEBEN LEERSE FÁCILMENTE

CONSOLIDAR LA EXPRESIÓN CONDICIONAL

- Cuando existen varios condicionales que devuelven un mismo valor resulta útil unificarlos en una expresión.

DESCOMPONER UN CONDICIONAL

- Crear un método con dicha expresión - Crear método con acciones a realizar por if/else - Código resultante será más legible y se encapsula en métodos sus acciones. Así reusarse y facilitar la depuración.

NIVEL MÉTODO

EXTRACCIÓN DE MÉTODO

MOVER MÉTODOS DE UNA CLASE A OTRA

- Revisar el código - Comprobar superclase/subclase - Renombrar método - Reemplazar llamadas

AÑADIR VARIABLES TEMPORALES

- Divide una variable temporal - Introduce una variable explicativa - Quita asignaciones a parámetros

ELIMINAR VARIABLES TEMPORALES

- Dificulta la depuración - Extraer la expresión que calcula el valor de la variable a un método sencillo y retornarlo - Aumento de reusabilidad de código - Cuidado que la variable no aparezca en más lugares

REFACTORIZACIÓN EN LÍNEA

- Incluir el código de 2 método en uno - Proceso inverso al de extracción inverso - Útil para métodos que no aportan valor - Cuidado con que el método no esté llamado desde otro sitio

- Dividir método en varios - Aumenta la reutilización de código - Cuidado con el uso de parámetros y variables

- El programador debe decidir en cada momento cuál es adecuada

- No siempre se usan las mismas

- No existe un orden

REESTRUCTURACIÓN DEL CÓDIGO
Suprimir código innecesario
Facilitar el mantenimiento
Mejora el diseño
LIMPIEZA DE CÓDIGO
- Facilitar el mantenimiento para:

Mejorar el rendimiento

Añadir características

Buscar errores.

- Facilitar su lectura
COMPORTAMIENTO EXTERNO
- Consola/interfaz gráfica
- Lo que ve el usuario
- Fuera del código
ESTRUCTURA INTERNA
- Código fuente
- Lo que maneja el programador
- Dentro del código

FACTORIZACIÓN

OBJETIVO
- Simplificar cálculos matemáticos
- Sacar factor común

DOCUMENTACIÓN

INTERNA

- Dentro del código - Relativa a la programación
TIPOS DE COMENTARIOS

JAVA

JAVADOC

COMENTARIOS

Se realiza una explicación de lo que hace el método o para que requiere la clase.

Se incluyen las etiquetas (necesarias)

UTILIZA PRE Y POST CONDICIONES

Postcondiciones : estado final a la salida (objeto)

Precondiciones : requisitos de entrada

@author - Programador/a @param - Parámetro de entrada @return - Valor de salida @see - Enlace a otra clase/método @throws - Excepciones a ser tratadas @version - Versión del método/clase

DEBE APARECER JUSTO ANTES DEL CÓDIGO A DOCUMENTAR

- Antes del método

- Antes de la clase

- Comentarios para el programador

/* COMENTARIO DE MÚLTIPLES LÍNEAS

// COMENTARIO DE UNA LÍNEA

- Comentario a incluir /** TEXTO */

- Documentación en HTML.

- Permite aunar documentación e implementaciones

Objetivo

- Control simple sobre cambios

- Genera automáticamente la documentación a partir del código fuente en JAVA.

/** DOCUMENTACIÓN JAVADOC */ (Generar documentación automática)

/* LINEAS * * LINEAS */ (Explican algoritmos/bloques de código)

// Una línea (Repetir/explicar sentencias)

- Describen el propósito del código

- Marcan el código

- Explican el código

- Repiten el código

Proceso complejo y ayuda a:

- Facilita la depuración

- Facilita la comprensión del código

- Facilita la reusabilidad

EXTERNA

- Fuera del código - Relativa a procesos de análisis-diseño o manuales de usuario.

Proceso por el cual se recopila información relevante del proyecto que se está desarrollando.

- Se debe desarrollar en todas las etapas del desarrollo del proceso.
- Proyecto debe estar documentado para facilitar al personal que participa en el mismo.
- Facilita la prevención y detección de errores