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

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

✐<br />

✐<br />

✐<br />

“Volum<strong>en</strong>1” — 2012/1/12 — 13:52 — page 540 — #578<br />

✐<br />

Apéndice B. Directrices de Programación<br />

71. No sobrecargue los new y delete globales. Hágalo siempre <strong>en</strong> cada clase.<br />

Sobrecargar las versiones globales affecta la proyecto completo, algo que sólo<br />

los creadores del proyecto debería controlar. Cuando sobrecargue new y delete<br />

<strong>en</strong> las clases, no asume que conoce el tamaño del objeto; algui<strong>en</strong> puede<br />

heredar de esa clase. Use el argum<strong>en</strong>to proporcionado. Si hace algo especial,<br />

considere el efecto que podría t<strong>en</strong>er <strong>en</strong> las clases derivadas.<br />

72. Evite el troceado de objetos. Prácticam<strong>en</strong>te nunca ti<strong>en</strong>e s<strong>en</strong>tido hacer upcast<br />

de un objeto por valor. Para evitar el upcast por valor, use métodos virtuales<br />

puros <strong>en</strong> su clase base.<br />

73. A veces la agregación simple resuelve el problema. Un FIXME:«sistema conforme<br />

al pasajero» <strong>en</strong> una línea aérea consta <strong>en</strong> elem<strong>en</strong>tos desconectados: asi<strong>en</strong>to,<br />

aire acondicionado, video, etc., y todavía necesita crear muchos más <strong>en</strong> un<br />

avión. ¿Debe crear miembros privados y construir una nueva interfaz completa<br />

No - <strong>en</strong> este caso, los compon<strong>en</strong>tes también son parte de la interfaz pública,<br />

así que deberían ser objetos miembros públicos. Esos objetos ti<strong>en</strong><strong>en</strong> sus propias<br />

implem<strong>en</strong>taciones privadas, que continúan seguras. Sea consci<strong>en</strong>te de que la<br />

agregación simple no es una solución usan a m<strong>en</strong>udo, pero que puede ocurrir.<br />

540<br />

✐<br />

✐<br />

✐<br />

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

Saved successfully!

Ooh no, something went wrong!