martes
feb072006
¿Cómo de bueno es Java para aprender a programar?
martes, febrero 7, 2006 at 8:45AM
Parece que somos bastante optimistas respecto a la bondad de Java como lenguaje para introducirse al mundo de la programacrión. Yo estoy más prýximo al mundo de la docencia y de la Universidad que al de la empresa, y he enseríado a universitarios a programar empleando Java y C/C++. Honestamente, no tengo claro cuýl es la mejor opcrión.
Es indiscutible que Java proporciona una abstraccrión de mayor nivel respecto a C++ que permite a los programadores ser más productivos. Sin embargo, mi experiencia me dice que el alumno que se ha peleado con la aritmética de punteros y la reserva dinýmica de memoria "manual" comprende realmente que hace el comando new y lo usa de un modo más "responsable", mientras que el que ha comenzado con Java directamente a menudo piensa que sumar dos enteros o crear un objeto son operaciones con un coste similar, y que no hay ningýn problema por crear cuantos objetos se quiera. Total, una vez que no los necesitas desaparecen solos sin causar ningýn tipo de molestia.
Otro problema que a menudo me encontrado es que Java no permite especificar si un dato se pasa a una funcrión por valor o por referencia. Esto no es didýctico para explicarle a un alumno cuýl es la diferencia entre ambos. Mi experiencia me dice que incluso tras llevar bastante tiempo programando en Java alguna gente no tiene claro conceptos de programacrión tan býsicos como este sino conocen algún otro lenguaje de programacrión.
Quizý los lenguajes de programacrión de más alto nivel, como Java, aun siendo indiscutiblemente más productivos para el programador veterano, no sean los más adecuados para aprender a programar. Algunos comparáeros mýos defienden que el mejor lenguaje para aprender a programar es Modula. Otros se decantan por Pascal. Tampoco faltan los que apoyan a C++ y Java. ýVosotros que opinýis? Y, a modo de curiosidad, ýcuýl fue vuestro primer lenguaje de programacrión? El de un servidor fue GWbasic.
Es indiscutible que Java proporciona una abstraccrión de mayor nivel respecto a C++ que permite a los programadores ser más productivos. Sin embargo, mi experiencia me dice que el alumno que se ha peleado con la aritmética de punteros y la reserva dinýmica de memoria "manual" comprende realmente que hace el comando new y lo usa de un modo más "responsable", mientras que el que ha comenzado con Java directamente a menudo piensa que sumar dos enteros o crear un objeto son operaciones con un coste similar, y que no hay ningýn problema por crear cuantos objetos se quiera. Total, una vez que no los necesitas desaparecen solos sin causar ningýn tipo de molestia.
Otro problema que a menudo me encontrado es que Java no permite especificar si un dato se pasa a una funcrión por valor o por referencia. Esto no es didýctico para explicarle a un alumno cuýl es la diferencia entre ambos. Mi experiencia me dice que incluso tras llevar bastante tiempo programando en Java alguna gente no tiene claro conceptos de programacrión tan býsicos como este sino conocen algún otro lenguaje de programacrión.
Quizý los lenguajes de programacrión de más alto nivel, como Java, aun siendo indiscutiblemente más productivos para el programador veterano, no sean los más adecuados para aprender a programar. Algunos comparáeros mýos defienden que el mejor lenguaje para aprender a programar es Modula. Otros se decantan por Pascal. Tampoco faltan los que apoyan a C++ y Java. ýVosotros que opinýis? Y, a modo de curiosidad, ýcuýl fue vuestro primer lenguaje de programacrión? El de un servidor fue GWbasic.
in
jh
jh 
Reader Comments