Unidad 4: Documentación y optimización
Last updated
Last updated
En esta Unidad aprenderemos a:
Trabajar de forma habitual con un sistema de control de versiones.
Identificar los patrones de refactorización más usuales.
Revisar el código fuente usando un analizador de código.
Documentar el código fuente.
También llamado code smell en inglés
Es síntoma en el código fuente que indica posiblemente un problema más profundo.
Usualmente no son bug de programación (errores): no son técnicamente incorrectos y en realidad no impiden que el programa funcione correctamente.
Indica deficiencias en el diseño que puede ralentizar el desarrollo o aumentan el riesgo de errores o fallos en el futuro.
Es un motivo importante para realizar refactorización.
Tipos:
Análisis dinámico (unit tests)
Análisis estático (lint)
Mediante analizadores estáticos (linters)
Mediante sitios web para inspección de código (Continuous Inspection)
Analizadores estáticos de código:
lint: C
sonar: Java
JSLint, ESLint: Javascript
Sitios web que ofrecen inspección de código:
Scrutinizer
SonarQube
PHP, Python y Ruby soportados
14 días de prueba gratis
Precio/Mes:
Plan Basic: 49 €
Plan Professional: 99 €
Plan Unlimited: 199 €
Note: A fecha Diciembre 2017
Más de 20 lenguajes soportados
Precio/Mes:
Plan Open Source: 0 $
Plan Private Projects: Desde 5 $
Note: A fecha Diciembre 2017
Es el proceso de reestructurar un código fuente, alterando su estructura interna sin cambiar su comportamiento externo.
Técnicas:
Renombrado de variables
Pasar código duplicado a funciones
Eliminación de código inalcanzable
Eliminación de código redundante
Eliminación de código muerto
...
Documentación de código
Documentación técnica
Documentación de usuario
HTML (p. ej. Javadoc)
Markdown (p. ej. Gitbook)
reStructuredText (p. ej. Readthedocs)
asciiDoc
CVS
Subversion
Mercurial
Git
Características
Moderno
Distribuido
Eficiente
Repository (local & remote)
Commit
Branch
Checkout
Merge (fast-forward, 3-way)