Tiempo de compilación frente a tiempo de ejecución
Qué puede evaluar Zig antes de ejecutarse.
Tiempo de compilación frente a tiempo de ejecución es una lección gratuita de Zig Academy en CoddyKit. Esta es la lección 1 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Zig Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Zig Academy incluye 4 lecciones en total.
Dos momentos en un solo programa
El código de Zig vive en dos mundos: las cosas que ocurren durante la compilación y las que ocurren mientras se ejecuta el programa. Entender esta división permite aprovechar el potencial de Zig. ⏱️
El tiempo de ejecución es el conocido
El tiempo de ejecución abarca todo lo que ocurre cuando se ejecuta el binario compilado: la entrada del usuario, la lectura de archivos y los valores que no puede conocer de antemano.
La compilación ocurre antes
El tiempo de compilación es el trabajo que realiza el compilador de Zig antes de que exista siquiera un binario. Algunas expresiones se evalúan por completo en ese momento.
Las constantes suelen resolverse
Una expresión sencilla cuyos valores se conocen puede calcularse durante la compilación. Zig la convierte en una sola constante dentro del binario final.
const minutes = 60 * 24;comptime_int no tiene un ancho fijo
Un literal entero sin tipo comienza siendo un comptime_int. Tiene precisión arbitraria hasta que se le asigna un tipo con tamaño definido, como i32.
const big = 1_000_000_000_000;La palabra clave comptime
Coloque comptime delante de una expresión para exigir que se evalúe durante la compilación. Si no es posible, se produce un error.
comptime {
const x = 2 + 3;
}Los valores de ejecución permanecen en ejecución
Un valor leído de la entrada solo se conoce cuando se ejecuta el programa. No puede pedir al compilador que lo evalúe en tiempo de compilación.
comptime puede ejecutar lógica real
La compilación no consiste solo en hacer operaciones matemáticas. Zig puede ejecutar bucles y llamar a funciones en tiempo de compilación, siempre que todas las entradas se conozcan entonces.
const total = comptime sum(10);Por qué trasladar trabajo a la compilación
Calcular algo durante la compilación implica un coste de tiempo de ejecución nulo. La respuesta queda integrada en el binario, por lo que el programa nunca vuelve a calcularla.
Un lenguaje para ambas fases
La misma sintaxis de Zig sirve para ambas fases. No existe un lenguaje de macros separado: el código de compilación es simplemente Zig ordinario ejecutado antes.
Los errores se detectan antes de la ejecución
Como Zig evalúa pronto el código conocido, muchos errores aparecen como errores de compilación. Puede corregirlos antes de que el programa llegue a ejecutarse.
Comprobación rápida
Escribe una constante igual a 7 por 24. ¿Cuándo se realiza esa multiplicación?
Resumen
Zig divide el trabajo entre tiempo de compilación y tiempo de ejecución. Los valores conocidos pueden calcularse antes sin coste, mientras que los desconocidos esperan hasta la ejecución. 🎯
Aprende Zig con un tutor de IA — gratis
Escribe y ejecuta código real en tu navegador, obtén ayuda instantánea de un tutor de IA disponible 24/7 y continúa donde lo dejaste en la web o en la aplicación.
- Cursos
- 30
- Lecciones
- 120
Preguntas frecuentes
¿La lección «Tiempo de compilación frente a tiempo de ejecución» es gratis?
Sí — el texto completo de «Tiempo de compilación frente a tiempo de ejecución» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Zig Academy, actualiza a CoddyKit PRO. El curso de Zig Academy incluye 4 lecciones en total.
¿Qué aprenderé en «Tiempo de compilación frente a tiempo de ejecución»?
Qué puede evaluar Zig antes de ejecutarse. Practicas Zig Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.
¿Necesito experiencia previa para empezar Zig Academy?
No se requiere experiencia previa. Zig Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 1 de 4.
¿Cuánto tiempo toma la lección «Tiempo de compilación frente a tiempo de ejecución»?
La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.
¿Puedo escribir y ejecutar código en esta lección de Zig Academy?
Sí. Cada lección de Zig Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.
Todas las lecciones de este curso
- Tiempo de compilación frente a tiempo de ejecución
- Parámetros y valores comptime
- Los tipos son valores comptime
- inline for y bucles desenrollados