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 33 — #71<br />
✐<br />
1.12. Estrategias de transición<br />
1.12. Estrategias de transición<br />
Si acepta la POO, su próxima pregunta seguram<strong>en</strong>te será: «¿cómo puedo hacer<br />
que mi jefe, mis colegas, mi departam<strong>en</strong>to, mis compañeros empiec<strong>en</strong> a utilizar objetos»<br />
Pi<strong>en</strong>se sobre cómo usted -un programador indep<strong>en</strong>di<strong>en</strong>te- puede ir apr<strong>en</strong>di<strong>en</strong>do<br />
a usar un nuevo l<strong>en</strong>guaje y un nuevo paradigma de programación. Ya lo ha<br />
hecho antes. Primero vi<strong>en</strong>e la educación y los ejemplos; <strong>en</strong>tonces llega un proyecto<br />
de prueba que le permita manejar los conceptos básicos sin que se vuelva demasiado<br />
confuso. Después llega un proyecto del «mundo real» que realm<strong>en</strong>te hace algo útil.<br />
Durante todos sus primeros proyectos continúa su educación ley<strong>en</strong>do, preguntando<br />
a expertos, e intercambiando consejos con amigos. Este es el acercami<strong>en</strong>to que<br />
sugier<strong>en</strong> muchos programadores experim<strong>en</strong>tados para el cambio de C a <strong>C++</strong>. Por<br />
supuesto, cambiar una compañía <strong>en</strong>tera introduce ciertas dinámicas de grupo, pero<br />
puede ayudar <strong>en</strong> cada paso recordar cómo lo haría una persona.<br />
1.12.1. Directrices<br />
Aquí hay algunas pautas a considerar cuando se hace la transición a POO y <strong>C++</strong>:<br />
Entr<strong>en</strong>ami<strong>en</strong>to<br />
El primer paso es algún tipo de estudio. Recuerde la inversión que la compañía<br />
ti<strong>en</strong>e <strong>en</strong> código C, e int<strong>en</strong>te no t<strong>en</strong>erlo todo desorganizado durante seis o nueve meses<br />
mi<strong>en</strong>tras todo el mundo alucina con la her<strong>en</strong>cia múltiple. Elija un pequeño grupo<br />
para formarlo, preferiblem<strong>en</strong>te uno compuesto de g<strong>en</strong>te que sea curiosa, trabaje bi<strong>en</strong><br />
junta, y pueda funcionar como su propia red de soporte mi<strong>en</strong>tras están apr<strong>en</strong>di<strong>en</strong>do<br />
<strong>C++</strong>.<br />
Un <strong>en</strong>foque alternativo que se sugiere a veces es la <strong>en</strong>señanza a todos los niveles<br />
de la compañía a la vez, incluir una visión g<strong>en</strong>eral de los cursos para ger<strong>en</strong>tes estratégicos<br />
es tan bu<strong>en</strong>o como cursos de diseño y programación para trabajadores de<br />
proyectos. Es especialm<strong>en</strong>te bu<strong>en</strong>o para compañías más pequeñas al hacer cambios<br />
fundam<strong>en</strong>tales <strong>en</strong> la forma <strong>en</strong> la que se hac<strong>en</strong> cosas, o <strong>en</strong> la división de niveles <strong>en</strong><br />
compañías más grandes. Como el coste es mayor, sin embargo, se puede cambiar<br />
algo al empezar con <strong>en</strong>tr<strong>en</strong>ami<strong>en</strong>to de nivel de proyecto, hacer un proyecto piloto<br />
(posiblem<strong>en</strong>te con un m<strong>en</strong>tor externo), y dejar que el equipo de trabajo se convierta<br />
<strong>en</strong> los profesores del resto de la compañía.<br />
Proyectos de bajo riesgo<br />
Pruebe primero con un proyecto de bajo riesgo que permita errores. Una vez que<br />
adquiera alguna experi<strong>en</strong>cia, puede acometer cualquier otro proyecto con miembros<br />
del primer equipo o usar los miembros del equipo como una plantilla de soporte<br />
técnico de POO. Este primer proyecto puede que no funcione bi<strong>en</strong> la primera vez,<br />
pero no debería ser una tarea crítica para la compañía. Debería ser simple, autocont<strong>en</strong>ido,<br />
e instructivo; eso significa que suele implicar la creación de clases que<br />
serán significativas para otros programadores <strong>en</strong> la compañía cuando les llegue el<br />
turno de apr<strong>en</strong>der <strong>C++</strong>.<br />
Modelar desde el éxito<br />
Buscar ejemplos de un bu<strong>en</strong> diseño ori<strong>en</strong>tado a objetos antes de partir de cero.<br />
Hay una gran probabilidad de que algui<strong>en</strong> ya haya resuelto su problema, y si ellos no<br />
lo han resuelto probablem<strong>en</strong>te puede aplicar lo que ha apr<strong>en</strong>dido sobre abstracción<br />
33<br />
✐<br />
✐<br />
✐<br />
✐