Add PDF documentation for command line arguments
This commit is contained in:
@@ -145,7 +145,63 @@ Un ejercicio puede combinar conceptos de niveles anteriores, pero **no debe exig
|
||||
|
||||
---
|
||||
|
||||
## 7. Lo que está prohibido
|
||||
## 7. Estilo didáctico al explicar conceptos ("para tontos")
|
||||
|
||||
Los capítulos no solo enuncian ejercicios: también **explican** los conceptos que el lector necesita.
|
||||
Esa explicación sigue un estilo llano, concreto y progresivo —el mismo que se usó en
|
||||
`book/14-entrada-salida-estandar.md`—, pensado para que el lector **entienda de verdad** y no solo
|
||||
lea. Estas reglas aplican a **todo capítulo** que explique conceptos.
|
||||
|
||||
**Analogía cotidiana primero.** Todo concepto arranca con una comparación del mundo real que el lector
|
||||
ya domina; recién después aparece el término técnico. Ejemplos del capítulo 14: las tres tuberías
|
||||
(`stdin`/`stdout`/`stderr`) son "una fábrica"; `getchar` es "sacar caramelos de a uno"; el búfer es
|
||||
"el villano de la película". La analogía se sostiene durante toda la explicación; no se abandona a la
|
||||
primera frase.
|
||||
|
||||
**Títulos con gancho, no etiquetas.** En vez de "Introducción a `getchar`", el título promete algo
|
||||
concreto: "`getchar`: el caramelito de a uno". Lo mismo vale para las subsecciones.
|
||||
|
||||
**Explicar el POR QUÉ, no solo el qué.** Cada regla llega con su motivo. No alcanza con decir "guardá
|
||||
en `int`, no en `char`": hay que explicar por qué (tiene que representar los 256 bytes posibles **y**
|
||||
un valor extra, `EOF`).
|
||||
|
||||
**Voz cercana y frases cortas.** Se trata al lector de "vos" (ver sección 6). Párrafos breves, en
|
||||
presente, sin rodeos. Se permite —y se espera— marcar la idea clave con **negrita** y con MAYÚSCULAS
|
||||
ocasionales.
|
||||
|
||||
**Cómo estructurar un capítulo largo:**
|
||||
|
||||
- Dividirlo en **partes** con un **índice** al inicio. La tabla lleva, por cada parte, "la idea en una
|
||||
frase".
|
||||
- Después de cada concepto, un **bloque de práctica** con uno o más ejercicios cortos, antes de
|
||||
avanzar al siguiente concepto.
|
||||
- Cerrar con un apartado tipo "lo que te llevás": las ideas clave en pocos bullets, y el puente al
|
||||
capítulo siguiente.
|
||||
|
||||
**Recursos que se repiten:**
|
||||
|
||||
- **Apodos para las trampas** clásicas: "la trampa N.º 1", "el bug más famoso del principiante", "el
|
||||
villano de la película".
|
||||
- **Blockquotes** (`>`) para notas, advertencias y "momentos ajá": "Momento ajá", "Ojo con esto",
|
||||
"Para guardar", "Truco de laboratorio". En el PDF todas se dibujan con fondo de color (sección 10).
|
||||
- **Tablas comparativas** para contrastar opciones o señales parecidas (p. ej. `EOF` vs `'\0'` vs
|
||||
`'\n'`).
|
||||
- **Diagramas ASCII** para mostrar lo visual: flujos conectados, los dos búferes en serie.
|
||||
- **Código ilustrativo comentado en lenguaje llano**: cada línea que introduce algo nuevo lleva un
|
||||
comentario claro y **de varias líneas** que dice exactamente qué hace. Los bloques declaran su
|
||||
lenguaje en el fence para que `highlight.js` los resalte (sección 10).
|
||||
- **Escenario de prueba** en cada ejercicio: un bloque `text` con la entrada y la salida esperada,
|
||||
para que el lector pueda **comprobar** su solución.
|
||||
|
||||
**El límite que NO se cruza.** Este estilo permite **código ilustrativo para explicar un concepto**
|
||||
(una llamada a una función, un esqueleto mínimo, un patrón genérico), pero **nunca** la solución de un
|
||||
ejercicio. Las reglas no negociables (sección 2) siguen mandando: se entrega el **problema**; la
|
||||
lógica que resuelve la consigna la escribe el lector. El código de ejemplo sirve para **entender** una
|
||||
herramienta, jamás para resolver un enunciado del libro.
|
||||
|
||||
---
|
||||
|
||||
## 8. Lo que está prohibido
|
||||
|
||||
- Escribir la solución, total o parcial, del enunciado (incluida la lógica en pseudocódigo).
|
||||
- Convertir el ejercicio en un proyecto grande, con build system, múltiples archivos o dependencias externas.
|
||||
@@ -156,7 +212,7 @@ Un ejercicio puede combinar conceptos de niveles anteriores, pero **no debe exig
|
||||
|
||||
---
|
||||
|
||||
## 8. Flujo para agregar contenido
|
||||
## 9. Flujo para agregar contenido
|
||||
|
||||
Checklist al crear o editar un ejercicio:
|
||||
|
||||
@@ -175,7 +231,7 @@ Checklist al crear o editar un ejercicio:
|
||||
|
||||
---
|
||||
|
||||
## 9. Generación de PDF (`dist/`)
|
||||
## 10. Generación de PDF (`dist/`)
|
||||
|
||||
Cada capítulo trabajado se publica como **PDF** en `dist/`, con el **mismo nombre** que su
|
||||
Markdown: `book/12-arenas.md` → `dist/12-arenas.pdf`.
|
||||
|
||||
Reference in New Issue
Block a user