Explicación del concepto
El rendimiento en Go a menudo comienza escribiendo lo más simple que funcione, y luego eliminando el desperdicio donde importa. En esta lección, construirás un pequeño ejemplo, inspeccionarás dónde ocurre trabajo extra y harás una mejora enfocada sin hacer que el código sea más difícil de leer. El objetivo es practicar la elección de un flujo de datos eficiente, evitar asignaciones innecesarias cuando sea posible y mantener las funciones lo suficientemente pequeñas como para razonar sobre ellas.
Dónde poner el código
- Define las 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, luego anota qué parte repite trabajo y cuál permanece constante.
- Mide un pequeño cambio, como preasignar un slice o reutilizar un valor, y compara el resultado.
- Mantén la estructura del paquete simple para que los cambios de rendimiento sean fáciles de revisar.
- Escribe una razón por la que tu versión más rápida sigue siendo legible.
Guía paso a paso
- Ejecuta primero el código inicial para conocer el comportamiento de referencia.
- Identifica un lugar donde el programa hace más trabajo del necesario.
- Haz una sola mejora, luego vuelve a ejecutar el programa y compara la salida.
- Explica en una oración por qué tu cambio mejora el rendimiento.
- Finaliza con una verificación rápida: resultado correcto, nombres claros y sin complejidad innecesaria.
Ejercicios prácticos
- Reescribe el ejemplo para que construya un slice más grande de manera eficiente sin cambiar el resultado final.
- Crea una segunda versión que resuelva la misma tarea de una manera más simple pero ligeramente menos optimizada, luego compara las ventajas y desventajas.
- Cambia el ejemplo para que funcione con cadenas en lugar de enteros y mantén el código eficiente.
Retos de código
- Procesa un conjunto de entrada más grande y mantén el código fácil de seguir.
- Encuentra una mejora de rendimiento que no dependa de trucos ingeniosos o código confuso.
Mini tareas de práctica
- Renombra una variable para que su propósito sea más claro.
- Agrega un comentario corto explicando la elección de rendimiento que hiciste.
- Imprime la longitud y capacidad del slice para confirmar lo que está haciendo el programa.
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.