Hace 6 años | Por --531884-- a umainclass.com
Publicado hace 6 años por --531884-- a umainclass.com

Aunque Java es del gusto de muchísimos programadores, con seguridad, también es uno de los lenguajes más complicados que puede aprender un iniciado en el mundo de la programación. Ahora, la Universidad de Standford abandona Java como lenguaje para enseñar a sus alumnos los fundamentos de la programación y usa JavaScript en su lugar. Y es que, al enseñar Java en un curso introductorio, se corre el riesgo de asociar la programación con una cosa tediosa y difícil en la mente de los principiantes, y es altamente probable que estos abandonen.

Comentarios

c

#3 Esa es la. vía dificil. Despues de C++ Java es un juguete...

D

#21 ¿conoces el recién aprobado C++17?
Con los nuevos estándares, C++ también es un juguete ...

c

#48 No, la verdad no. Pero sigue siendo más complejo que Java

D

#50 si usas exclusivamente al nuevas funcionalidades (nada de new/delete etc) , y una librería añadida potente (Qt) no
tiene el porque ser más complejo.
A cambio, obtienes multi plataforma verdadera y un rendimiento de escándalo

D

#21 Es vía ideal. El aprendizaje se ha de hacer de abajo a arriba, sin llegar tan abajo como el ensamblador necesariamente, pero sin empezar desde un nivel tan alto que no llegues a entender el cómo y el por qué los programas se comportan como lo hacen.

Realmente yo compadezco a una persona que aprenda a programar con WebForms por ejemplo. Se va a perder más de la mitad de las cosas y probablemente no llegue a entender por qué las cosas funcionan como lo hacen.

D

#30 Si claro. Si quieres que tus alumnos huyan despavoridos adelante. C es el punto de partida ideal. Nos interesa que los alumnos aprendan a programar con un lenguaje similar al humano. Y de los leguajes de alto nivel C es el que permite llegar a un nivel más bajo, con lo que perfectamente puedes enseñar ensamblador partiendo de C.

ED209

#3 c++ es el mas complicado de los tres, ¿qué sentido tiene en esa lista de aprendizaje? A que no aprenderias integrales antes de saber sumar? Pues eso

D

#c-43" class="content-link" style="color: rgb(227, 86, 20)" data-toggle="popover" data-popover-type="comment" data-popover-url="/tooltip/comment/2851401/order/43">#43 Más complicado según se mire. C++ es el paso natural que viene después de C. C# o Java son más sencillos porque llevan implícitos una serie de características que hacen que el programador pueda obviar ciertas cosas, pero eso no quiere decir que un buen programador no deba saber el por qué las cosas funcionan de una manera u otra. En ese sentido C++ es mucho más transparente. Un buen programador de C++ enterderá mejor Java y C# que uno que empiece dirctamente en esos leguajes.

Maseo

#3 No me parece mal empezar con C, quizá un poco duro de inicio así que a mi me parece mejor tal como lo hice yo en su momento, primero Pascal como introducción y luego C como plato fuerte, que fue el lenguaje que más usé durante la carrera, seguido por C++ (aunque tuve la oportunidad de usar puntualmente ADA, Lisp, Perl, Ensamblador y algunos otros según la asignatura, incluso creé mi propio lenguaje, muy simple, en la asignatura de compiladores). Java no lo toqué hasta que empecé a trabajar y no me costó aprenderlo. A fecha de hoy C sigue siendo mi favorito.

D

#3 yo aprendí orientación a objetos en C (como hacer pseudoclases en C) ...
Cuando ya conoces los fundamentos de bajo nivel, ya puedes asar a un lenguaje de mas alto nivel...
así nunca pierdes el concepto de lo que estas haciendo

D

#49 Ciertamente es perfectamente posible. La orientación a objetos es simplemente una forma de programar. Otra cosa es que haya unos lenguajes más orientados a ese estilo de programación.

D

#10 ¿Por qué es un error empezar por PHP? Genuina curiosidad.

O

#51 No es tipado, y eso creo que despista a un principiante, y sobre todo dificulta el aprendizaje de otros lenguajes tipados. PHP evolucionó hasta ser orientado a objetos pero sigue arrastrando su programación funcional, es decir, que es un monstruo híbrido con problemas de identidad. Y por si esto fuera poco, cuando se mezcla con el html en el mismo fichero, el caos sintáctico y conceptual está servido.

D

#52 No sé, esto ya es una opinión personal mía pero pienso que un lenguaje no tipado es una ventaja en el momento de empezar (aunque claro si realmente quieres aprender programación, es un error quedarse ahí). Aparte de que PHP puede ser completamente tipado desde PHP7 y lo era parcialmente en PHP5. Yo personalmente encuentro PHP muy bueno como lenguaje de generación de templates (que era su propósito original) solo que hay que seguir el estándar adecuado de codificación a cada momento, que puede ser requerido por un validador de estilo que los hay y muy buenos.

s

#19 A mí me parece mejor lenguaje para aprender C, porque el primer lenguaje debe ser uno compilado y fuertemente tipado para aprender el proceso... También para saber más o menos cómo tratar la memoria.

Después de C, javascript o python sin duda, como ejemplos de lenguajes hermosos y versátiles. Javascript se lleva la palma en versatilidad y, sobretodo, lo ejecutas en cualquier cachivache.

c

#35 C no es fuertemente tipado. PASCAL si. Java mismo tiene un tipado más fuerte.

D

#8 Si pones al principio del código "use strict" ya tienes un javascript más riguroso

s

#22 El #8 #15 Del presente.

xiobit

Pascal, hay que empezar por Pascal.

k

#16 se escribe demasiado. Pero es un gran lenguaje para aprender. C se parece más a casi todos los otros lenguajes.

c

#16 logo facilito nowall

Yomisma123

Scratch

grodriguezgonzalez

Es que empezar a dar programacion con POO es mal inicio. Y si no usan Java para POO entonces es que no entienden para que sirve la POO.

Yo en mi FP Medio comence con PHP (2004), en mi FP Superior empece con C, en la carrera empezamos con C.

Casanotra

#1 JS también es OOP. Aunque entiendo que te refieres a que es multiparadigma.

c

#1 Empezar con POO es una excelente idea.

M

#20 Es más, empezar con JavaScript es una muy mala idea. Es un lenguaje que no te fuerza a adoptar buenos hábitos de programación (más bien todo lo contrario) que es lo importante cuando uno empieza. Eso sí: es muy facilito y divertido, que parece que es lo necesario en este momento. La gente ya no tiene capacidad de esfuerzo, y hay que hacer las cosas sencillitas y entretenidas. Estamos en el puto declive.

cosmonauta

Y ahora que me he leído el artículo.( Confesad, vosotros tampoco lo habéis hecho) veo que el titular no se corresponde con la noticia, o sea que la voto errónea.

D

Para aprender lo mejor es Python, es lo más cercano al pseudo lenguaje.

ElPerroDeLosCinco

Soy informático y me gusta la programación como profesión y como afición; pero sinceramente, no creo que todo el mundo deba saber programar ni creo que en futuro sea un conocimiento exigible a todos los estudiantes. Muchos vivimos perfectamente sin saber cómo funciona un motor de explosión o una mitocondria, ni sabemos tocar ningún instrumento musical ni bailar, ni somos capaces de dibujar una cara ni de redactar un cuento, ni preparar un cocido ni coger los bajos de un pantalón. Se puede vivir perfectamente sin saber programar. Creo que es fantástico que los jóvenes que estén interesados por ella encuentren medios para recibir formación, pero no creo que se deba imponer a todos como asignatura troncal obligatoria. Una persona a la que no le interese programar pero que es obligada a hacerlo, apenas aprenderá lo justo para aprobar y después lo olvidará todo. Excepto la sensación de que era un coñazo.

D

#44 Concuerdo contigo al mismo tiempo que digo que, en algunas carreras se debería machacar más. En Física apenas vimos Python en primero y nunca más. Una verdadera pena porque, tal vez no a todos, pero a la mayoría nos es la mar de útil programar.

ElPerroDeLosCinco

#53 Correcto. En carreras técnicas sí veo la necesidad de saber algo de programación.

Jokessoℝ

Creo que es el mejor lenguaje de programación para aprender sigue siendo el Basic y sus derivados. Qbasic 4.5 es fantástico.

c

#7 o código maquina

fperez

Si el recolector de basura de Java fuera realmente efectivo, éste debería desinstalarse automáticamente en cada ejecución.

ur_quan_master

Microhobby por documentación y ensamblador para el z80 con basic Como lenguaje de scrippting. El que no aprenda así, orden de alejamiento de cualquier sistema de computación.

Ahora en serio el mayor problema de la enseñanza de programación en la uni es que los profesores no tienen ni puta idea.

k

C es perfecto para empezar. La sintaxis es muy parecida en casi todos los lenguajes. C en plan básico sin punteros es facilito para aprender tipos, operadores variables, condiciones y bucles.

Una vez controlado se puede entrar en los punteros, aprender a gestionar memoria para ser metódico y cuidadoso y saber qué hay por debajo de la magia de recolector de basura.

Después ficheros, estructuras de datos, algoritmos.

Finalmente c++ básico, herencia, polimorfismo,encapsulamiento. Una asignatura completa de diseño orientado a objetos.

Una vez controlado todo éso cualquier lenguaje se puede aprender en una semana.

Como decía el compañero, javascript es un sindios. Pero java no es bueno para empezar. Está lleno de punteros, pero no los ves. Debe ser bastante confuso para un principiante. Y el recolector de basura no te hace ser metódico y te convertirá en un programador nefasto.

c

#17 Cierto. Pero es la vía difícil. Java es muuuuucho más simple.

C

Un profesor confesó que le gustaría iniciar con SQL porque se requiere primero entender la lógica.

Observer

#34 write once, run everywhere
Buen chiste, si no lo dijeras en serio.

ED209

#34 #38 write once, debug everywhere

D

Si realmente enseñan en un curso de programación que un alert() de Javascript es equivalente a un System.out.println() de Java no confiaría mucho en la calidad del mismo. Más allá de que los dos muestran un texto los conceptos fundamentales a los que se refieren son distintos.

Por lo demás Java9 tiene un REPL al estilo Scala o Groovy, así que puedes escribir perfectamente System.out.println("Hello World") y ver que hace sin necesidad de todo lo demás.

s

#27 vaya! Veo que 15 años después han llegado!

Hay consolas de js desde hace mogollón. Y desde que existe node el REPL de javascript no desmerece al de cualquier otro lenguaje.

Javascript es fabuloso. La gente en España lo detesta porque en la universidad la mayoría no ha tocado programación web en la vida y lo conocieron de scripts guarros...

Pero cuando después el resto de lenguajes adaptan sus técnicas funcionales o su lógica asíncrona ves que javascript tiene su posición ganada a pulso.

Javascript consiguió, desde node, lo que siempre prometió java y nunca consiguió: write once, run everywhere.

s

#27 No creo que enseñen eso. En Javascript hay un console.log y en node un process.stdout

c

modula 2 😂 o" baisic"

pip

JavaScript es un desmierde total

ferreret

Yo empecé con ADA.
Lenguaje super estructurado que te obliga a tener claro qué quieres hacer y qué necesitas usar.
De allí ya saltas a otras estructuras (orientación a objetos, bases de datos, etc) y adaptas tu pseudocódigo a las características de cada lenguaje.

gonas

La programación es una actividad difícil, de la que se necesita vocación. El buscar lenguajes sencillos para enseñar no es la solución.

D

#4 La programación como tal no es tan complicada. Se vuelve complicado si tratas de empezar la casa por el tejado. En cualquier caso en pocos años la programación va a ser como el inglés ahora. No me refiero a desarrollar aplicaciones complejas pero en pocos años todos los jóvenes deberían tener al menos nociones básicas de programación

c

#14 si como los bilingues

ccguy

#4 Se necesita vocación para dedicarse a ello profesionalmente. Pero todo el mundo debería saber programar algo, más que nada para tener los rudimentos de (parte de la) tecnología que controla casi todo en nuestras vidas.

D

¿Solo para iniciarse?

Nova6K0

Ensamblador como los hombres...

Salu2

D

Javascript es el lenguaje del futuro

superplinio

Yo creo que el problema es empezar la programación por la orientación a objetos, lo que llaman el "Object first"

Pero sin embargo creo que sería muy fácil enseñar a programar en Java sin enseñar POO.

Se puede enseñar que una clase es como una "unit" de pascal, un lugar donde colocar métodos relacionados entre sí, sin meterse demasiado en la abstracción.

Evitas cualquier tema relacionado con la herencia, el polimorfiso y la ligadura dinámica. Es más al principio solo trabajas con métodos estáticos. Solo cuando comprendan bien las estructuras de programación puedes pasar a hacer Tipos Abstractos de Datos en Java, esto es, usar las clases y la abstracción para crear nuevos tipos abstractos de datos.

De esa forma aprendes:
- A programar en un lenguaje con tipos rigurosos donde te fuerza a que la compilación sea correcta. Cuando estas aprendiendo es mejor no dejar los errores a tiempo de ejecución
- Aprender un lenguaje popular que probablemente vayas a usar en el futuro y que tiene IDEs modernos y pontentes
- Un lenguaje cuya sintaxis es similar a la de C. Ya tienes medio paso avanzado hacia otro lenguaje.
- Has dado el primer paso hacia la POO

Empezar con JavaScript me parece una locura, por mucho que JavaScript vaya a acabar dominando el mundo

O

#54 Suscribo cada palabra. Además con java puedes dar el salto a programar android, que podría ser motivador para muchos.