Explicación del concepto
Un principiante no necesita buscar micro-optimizaciones, pero es útil notar cuándo un enfoque es más limpio y ligero que otro. En esta lección, la perspectiva de rendimiento significa comparar dos formas de construir la misma salida y entender por qué una escala mejor. Java ofrece varias maneras de trabajar con texto, y los ejemplos pequeños son el mejor lugar para ver claramente las ventajas y desventajas. Usarás un bucle, generarás contenido repetido y observarás cómo la estructura afecta tanto la legibilidad como la eficiencia. El objetivo no es memorizar trucos de velocidad. El objetivo es desarrollar buenos instintos: elige primero una solución clara, luego verifica si sigue teniendo sentido cuando la cantidad de trabajo aumenta.
Dónde poner el código
- Define variables de color y posición en la parte superior.
- Crea la lógica de dibujo o posicionamiento de formas en el medio.
- Renderiza la salida (impresión, `canvas`, `SVG` o bloque con estilo) al final.
Referencia de comandos
- Ejecuta el código e inspecciona el texto generado línea por línea.
- Aumenta el tamaño del bucle y observa cómo cambia la salida.
- Reescribe el bucle una vez usando concatenación de cadenas simple, luego compara la legibilidad.
- Indica una razón por la que `StringBuilder` a menudo se prefiere para el ensamblaje repetido de texto.
Guía paso a paso
- Explica qué añade el bucle en cada pasada.
- Ejecuta el programa inicial y confirma que se imprimen cinco líneas.
- Cambia el límite superior del bucle y vuelve a ejecutar el código.
- Crea una segunda versión que use un `String` regular para la misma tarea.
- Compara ambas versiones y anota cuál mantendrías en un programa más grande.
Ejercicios prácticos
- Modifica el programa para que cada línea incluya un estado como `done` o `pending`.
- Crea una versión que imprima nombres de usuario numerados en lugar de etiquetas de tarea.
- Añade una línea antes del bucle que sirva como un título de informe simple.
Retos de código
- Genera una lista mucho más grande y explica qué enfoque sigue siendo más fácil de mantener.
- Diseña un formato de salida pequeño donde los saltos de línea y el espaciado se mantengan consistentes a medida que la lista crece.
Mini tareas de práctica
- Renombra la variable `builder` a algo más descriptivo.
- Añade una línea final después de la salida del bucle que muestre el número total de tareas.
- Escribe una frase explicando cuándo las preocupaciones de rendimiento empiezan a importar en programas simples.
Error común
Mixing x and y axes or using wrong coordinate origin causes shapes to appear in unexpected places.
Mini reto de la vida real
Draw one square, one triangle, and one circle, then move X marker 2 steps right and 1 step down.