13.01.2015 Views

Pensar en C++ (Volumen 1) - Grupo ARCO

Pensar en C++ (Volumen 1) - Grupo ARCO

Pensar en C++ (Volumen 1) - Grupo ARCO

SHOW MORE
SHOW LESS

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 XXVI — #26<br />

✐<br />

Prefacio<br />

incluso eliminan, <strong>en</strong> el caso de Java).<br />

Así que la respuesta corta a la pregunta «¿Qué es difer<strong>en</strong>te <strong>en</strong> la segunda edición»<br />

sería que aquello que no es completam<strong>en</strong>te nuevo se ha reescrito, a veces<br />

hasta el punto <strong>en</strong> el que no podría reconocer los ejemplos y el material original de la<br />

primera edición.<br />

¿Qué conti<strong>en</strong>e el volum<strong>en</strong> 2 de este libro<br />

Con la conclusión del estándar de <strong>C++</strong> también se añadieron algunas importantes<br />

bibliotecas nuevas, tales como string y los cont<strong>en</strong>edores, y algoritmos de la Librería<br />

Estándar <strong>C++</strong>, y también se ha añadido complejidad a las plantillas. Éstos y otros<br />

temas más avanzados se han relegado al volum<strong>en</strong> 2 de este libro, incluy<strong>en</strong>do asuntos<br />

como la her<strong>en</strong>cia múltiple, el manejo de excepciones, patrones de diseño, y material<br />

sobre la creación y depuración de sistemas estables.<br />

Cómo obt<strong>en</strong>er el volum<strong>en</strong> 2<br />

Del mismo modo que el libro que lee <strong>en</strong> estos mom<strong>en</strong>tos, <strong>P<strong>en</strong>sar</strong> <strong>en</strong> <strong>C++</strong>, Volum<strong>en</strong><br />

2 se puede descargar desde mi sitio web www.BruceEckel.com. Puede <strong>en</strong>contrar información<br />

<strong>en</strong> el sitio web sobre la fecha prevista para la impresión del Volum<strong>en</strong> 2.<br />

El sitio web también conti<strong>en</strong>e el código fu<strong>en</strong>te de los listados para ambos libros,<br />

junto con actualizaciones e información sobre otros seminarios <strong>en</strong> CD-ROM que ofrece<br />

MidView Inc., seminarios públicos y formación interna, consultas, soporte y asist<strong>en</strong>tes<br />

paso a paso.<br />

Requisitos<br />

En la primera edición de este libro, decidí suponer que otra persona ya le había<br />

<strong>en</strong>señado C y que el lector t<strong>en</strong>ía, al m<strong>en</strong>os, un nivel aceptable de lectura del mismo.<br />

Mi primera int<strong>en</strong>ción fue hablar de lo que me resultó difícil: el l<strong>en</strong>guaje <strong>C++</strong>. En<br />

esta edición he añadido un capítulo como introducción rápida a C, acompañada del<br />

seminario <strong>en</strong>-CD Thinking in C, pero sigo asumi<strong>en</strong>do que el lector ti<strong>en</strong>e algún tipo<br />

de experi<strong>en</strong>cia <strong>en</strong> programación. Además, del mismo modo que se apr<strong>en</strong>d<strong>en</strong> muchas<br />

palabras nuevas intuitivam<strong>en</strong>te, viéndolas <strong>en</strong> el contexto de una novela, es posible<br />

apr<strong>en</strong>der mucho sobre C por el contexto <strong>en</strong> el que se utiliza <strong>en</strong> el resto del libro.<br />

Apr<strong>en</strong>der <strong>C++</strong><br />

Yo me ad<strong>en</strong>tré <strong>en</strong> <strong>C++</strong> exactam<strong>en</strong>te desde la misma posición <strong>en</strong> la que espero que<br />

se <strong>en</strong>cu<strong>en</strong>tr<strong>en</strong> muchos de los lectores de este libro: como un programador con una<br />

actitud muy s<strong>en</strong>sata y con muchos vicios de programación. Peor aún, mi experi<strong>en</strong>cia<br />

era sobre porgramación de sistemas empotrados a nivel hardware, <strong>en</strong> la que a veces<br />

se considera a C como un l<strong>en</strong>guaje de alto nivel y excesivam<strong>en</strong>te inefici<strong>en</strong>te para<br />

ahorrar bits. Descubrí más tarde que nunca había sido un bu<strong>en</strong> programador <strong>en</strong> C,<br />

camuflando así mi ignorancia sobre estructuras, malloc() y free(), setjmp()<br />

y longjmp(), y otros conceptos sofisticados, y muriéndome de vergü<strong>en</strong>za cuando<br />

estos términos <strong>en</strong>traban <strong>en</strong> una conversación, <strong>en</strong> lugar de investigar su utilidad.<br />

Cuando com<strong>en</strong>cé mi lucha por apr<strong>en</strong>der <strong>C++</strong>, el único libro dec<strong>en</strong>te era la auto-<br />

XXVI<br />

✐<br />

✐<br />

✐<br />

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!