Pensar en C++ (Volumen 1) - Grupo ARCO
Pensar en C++ (Volumen 1) - Grupo ARCO
Pensar en C++ (Volumen 1) - Grupo ARCO
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
✐<br />
✐<br />
✐<br />
“Volum<strong>en</strong>1” — 2012/1/12 — 13:52 — page XXIII — #23<br />
✐<br />
Producción<br />
ro XML que conti<strong>en</strong>e el texto de todo el libro, y es ese fichero resultante el que se<br />
procesa.<br />
Código fu<strong>en</strong>te<br />
También se utiliza XInclude para añadir <strong>en</strong> su lugar el cont<strong>en</strong>ido de los ficheros<br />
de código fu<strong>en</strong>te escritos <strong>en</strong> <strong>C++</strong>. De ese modo, el texto de los listados que aparec<strong>en</strong><br />
<strong>en</strong> el libro es idéntico a los ficheros <strong>C++</strong> que distribuye el autor. De ese modo, la<br />
edición es mucha más limpia y sobretodo se evitan posibles errores de transcripción<br />
de los listados.<br />
Utilizando un pequeño programa escrito <strong>en</strong> l<strong>en</strong>guaje Python 5 , se substituy<strong>en</strong> los<br />
nombres etiquetados de los ficheros por la s<strong>en</strong>t<strong>en</strong>cia XInclude correspondi<strong>en</strong>te:<br />
//: V1C02:Hello.cpp<br />
pasa a ser:<br />
<br />
C02/Hello.cpp<br />
<br />
<br />
<br />
<br />
Una ver realizada esta substitución, se utiliza de nuevo xsltproc para montar<br />
tanto el texto como los listados <strong>en</strong> un único fichero XML.<br />
Conv<strong>en</strong>ciones tipográficas<br />
Palabras reservadas: struct<br />
Código fu<strong>en</strong>te: printf("Hello world");<br />
Nombres de ficheros: fichero.cpp<br />
Aplicación o fichero binario: make<br />
Entrecomillado: «upcasting»<br />
Esquemas y diagramas<br />
Los dibujos y diagramas originales se han rehecho <strong>en</strong> formato .svg usando la<br />
herrami<strong>en</strong>ta inkscape 6 . A partir del fichero fu<strong>en</strong>te .svg se g<strong>en</strong>eran versiones <strong>en</strong><br />
formato .png para la versión HTML y .pdf para la versión PDF.<br />
G<strong>en</strong>eración de productos<br />
A partir del docum<strong>en</strong>to completo <strong>en</strong> formato DocBook se g<strong>en</strong>eran dos resultados<br />
distintos;<br />
5 ./utils/fix_includes.py<br />
6 http://inkscape.org/<br />
XXIII<br />
✐<br />
✐<br />
✐<br />
✐