Zig Academy · Lección

Por qué Zig no tiene asignaciones ocultas

La asignación siempre se proporciona explícitamente.

Lección 1 de 413 pasos

Por qué Zig no tiene asignaciones ocultas 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.

La memoria es explícita

En Zig, ninguna función de la biblioteca estándar obtiene memoria del montón silenciosamente. Si el código necesita asignar memoria, debe indicarlo explícitamente. 📦

Debe pasar el asignador

Todo lo que asigna memoria recibe un asignador como parámetro. La memoria no puede aparecer a menos que proporcione a la función la herramienta para crearla.

fn buildList(allocator: std.mem.Allocator) !void {}

No existe la palabra clave new oculta

Zig no tiene el operador new ni un recolector de basura. Nada accede al montón a sus espaldas como ocurre en muchos lenguajes.

Por qué es importante

Como la asignación es visible, siempre sabe de dónde procede la memoria. Esto es fundamental en chips integrados, kernels y bucles de juego exigentes.

Lea la firma

Una función que puede asignar memoria lo muestra en su firma: recibe un asignador y normalmente devuelve una unión de errores con !.

fn dupe(a: std.mem.Allocator, s: []const u8) ![]u8 {}

La pila es gratuita

Las variables locales simples viven en la pila y no necesitan un asignador. Solo necesita uno cuando un valor debe sobrevivir a su función o crecer durante la ejecución.

var x: i32 = 5; // stack, no allocation

La asignación puede fallar

Solicitar memoria del montón puede fallar, por lo que las funciones que asignan memoria devuelven un error. Debe gestionar un posible OutOfMemory; nunca lo ignore.

Es propietario de lo que crea

Quien llama al asignador es el propietario del resultado y debe liberarlo. Zig nunca libera la memoria por usted, así que la propiedad siempre queda clara.

Cambie de asignador libremente

Como el asignador es un parámetro, puede cambiar de estrategia sin modificar la lógica. Las pruebas usan un asignador y producción usa otro.

Las bibliotecas son transparentes

Una biblioteca bien escrita nunca oculta una asignación. Acepta su asignador, para que usted controle la memoria incluso dentro del código de otras personas.

Predecible por diseño

Esta regla forma parte de la promesa de Zig de no ocultar el flujo de control. La asignación explícita mantiene los programas predecibles y fáciles de razonar. ✅

Comprobación rápida

Recuerde cómo obtiene una función de Zig la capacidad de asignar memoria.

Repaso

Ha visto que Zig no tiene asignaciones ocultas: la memoria solo llega a través de un asignador que usted proporciona, y usted es propietario de todo lo que crea y debe liberarlo. 🎯

Gratis para empezar

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 «Por qué Zig no tiene asignaciones ocultas» es gratis?

Sí — el texto completo de «Por qué Zig no tiene asignaciones ocultas» 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 «Por qué Zig no tiene asignaciones ocultas»?

La asignación siempre se proporciona explícitamente. 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 «Por qué Zig no tiene asignaciones ocultas»?

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

  1. Por qué Zig no tiene asignaciones ocultas
  2. La interfaz Allocator
  3. alloc, free, create, destroy
  4. Listas dinámicas con ArrayList
← Volver a Zig Academy