[C con Clase] Empezar con C o con C++, la pregunta del millón.
Steven Davidson
srd4121 en njit.edu
Jue Mar 24 16:28:34 CET 2011
Hola Jesús,
On 3/24/2011 11:05 AM, Jesús García wrote:
> Hola a todos los usuarios de esta lista:
>
> Soy nuevo por aquí y estoy interesado en aprender C o C++. Se que C
> es programación estructural (con la que siempre me he sentido más
> cómodo) y C++ es programación orientada a objetos (que me cuesta más
> entenderla). Pero lo que no me queda claro es si empezando
> directamente por C++ me costará mucho más entender este lenguaje.
>
> Así que esa es mi pregunta. Todos los consejos y opiniones son
> bienvenidas.
>
Típicamente, y en especial en nuestro curso de C++, al aprender C++
desde el prinicpio uno acaba aprendiendo C, con algunas particularidades
de C++. Esto es porque C++ proviene de C y se diseñó para que fuese
compatible con C; es decir, los programas de C también son de C++ y por
tanto, se pueden compilar bajo C++. Esto significa que se aprende la
programación estructural o modular mientras se aprende C++ al principio.
Posterior y típicamente, se pasa a estudiar la programación orientada a
objetos y uno se centra en la parte perteneciente a C++, dejando atrás C.
Lo interesante de C++ es que no es un lenguaje puramente orientado a
objetos, como Smalltalk, Java, C#, etc., sino que más bien es un híbrido
entre la programación modular y la orientada a objetos. Por lo tanto,
podemos usar C++ para crear tanto programas modulares, como en C,
Pascal, etc., como programas orientados a objetos.
No hay una gran diferencia entre la programación modular y la orientada
a objetos. Personalmente, pienso que la POO es una extensión de la
programación modular, por lo que no debería costar mucho aprender la
POO, si uno sabe programar adecuadamente con estructuración.
Mi opinión es que puedes empezar a aprender C++ directamente, si éste es
tu objetivo. Es decir, si quieres aprender C++, entonces hazlo
directamente. No es necesario aprender C antes de C++. Además, como he
dicho, al final aprendes C mientras aprendes C++ al principio.
Espero que esto te oriente.
Steven
Más información sobre la lista de distribución Cconclase