19/Sep/2025
1. Herramientas de Desarrollo
IDE (Entorno de Desarrollo Integrado)
Un IDE reúne en un solo lugar:
- Editor de código
- Control de versiones
- Consola de depuración
- Entorno colaborativo
- Herramientas de base de datos
- Herramientas de consulta
Permite escribir, probar y depurar programas de manera más rápida y organizada.
Profiling y Telemetría
- Profiling: Técnica para analizar qué hace un programa en ejecución, midiendo uso de CPU, memoria y variables. Sirve para detectar cuellos de botella y optimizar rendimiento.
- Telemetría: Registro y análisis de métricas de un sistema en tiempo real (ej. con herramientas como Grafana).
- En entornos de staging y testing, ayudan a verificar la eficiencia del código antes de producción.
Nota: “Los errores no ocurren cuando son observados” → por eso es importante la telemetría, ya que permite detectar fallos en condiciones reales.
2. Desarrollo Ágil (DA) y Principios
El desarrollo ágil implica apegarse a los principios del Manifiesto Ágil: interacción con el cliente, software funcional sobre documentación, colaboración continua y adaptación al cambio.
¿Cómo programamos en Ágil?
-
Diseñar en papel: Definir entradas y salidas (ejemplo: almacén → productos con clave, precio y stock). Casos de uso y pantallas: Planear cómo interactuará el usuario.
-
Dividir en tareas: CRUDs, listas, interfaces, etc.
-
Priorizar: Ordenar qué se hace primero.
-
Programar con apoyo de IDE y herramientas.
-
Iterar: Desarrollar en ciclos cortos, entregando valor en cada iteración.
- Cada tarea completada se “tacha”, lo que genera motivación y sensación de avance.
📜 “El soldado se prepara en paz y no en guerra” (Séneca) → significa que debemos practicar y organizar antes de que llegue la presión real de producción.
3. Frameworks
Un framework es un conjunto de bibliotecas y reglas que facilita el desarrollo en un lenguaje de programación.
- Ventajas: pruebas integradas, rapidez de desarrollo, conexión a bases de datos, ORM, soporte de comunidad.
- Elección de framework → se parece a elegir comida: considerar porción, costo, sabor, consistencia y parámetros.
4. Elección de Lenguajes y Herramientas
La elección del lenguaje depende de los requisitos del sistema y el contexto del proyecto:
- Programación lineal → Python (ligero, flexible).
- Aplicaciones con altas/bajas transacciones → PHP.
- Puntos de venta → Delphi o C# (robustos para escritorio).
- No recomendados: Perl o Python para algunos sistemas de ventas.
5. Glosario
- IDE: Entorno de Desarrollo Integrado, programa que centraliza herramientas de desarrollo.
- Depuración (Debugging): Proceso de encontrar y corregir errores en el código.
- Profiling: Medición del rendimiento de un programa en ejecución.
- Telemetría: Registro en tiempo real de métricas del sistema (uso de CPU, memoria, etc.).
- Staging: Entorno de pruebas que simula producción antes de liberar al usuario final.
- CRUD: Operaciones básicas sobre datos: Create, Read, Update, Delete.
- Framework: Conjunto de bibliotecas y herramientas que facilitan el desarrollo en un lenguaje.
- ORM (Object-Relational Mapping): Técnica para mapear objetos de un lenguaje a tablas de base de datos.