Mencionó Python y Ruby en su pregunta, por lo que supongo que se pregunta por qué los lenguajes dinámicos generalmente no se enseñan en colegios y universidades. (si eso es lo que quieres decir con ‘escuelas’).
Para ser honesto: no tengo una buena respuesta. Cuando miras el TIOBE
El Índice de la comunidad de programación puede ver que, si bien los lenguajes de tipo estático ocupan los primeros lugares, PHP, Python, Perl, Javascript y Ruby han ocupado los rangos medios durante muchos años. Entonces, obviamente, hay un lugar para los lenguajes dinámicos en el mundo. Ousterhout argumentó el caso de los lenguajes de secuencias de comandos en 1998 [1].
Pero mi impresión es que en 2012 la mayoría de los programas de CS comienzan con Java o C / C ++; con una minoría haciendo primero Haskell u otros lenguajes funcionales. Vea también la discusión ‘Primer año de lenguajes de programación de informática’ en Stackoverflow.
Soy de una generación que típicamente aprendió uno de los lenguajes dinámicos BASIC o LOGO como su primer idioma. Entonces, me parece natural enseñar primero la programación con un lenguaje dinámico, y solo pasar a las complejidades de los tipos y la memoria después de dominar los conceptos básicos de la programación.
- ¿Dónde puedo ir para aprender a volar ultraligeros en el área de la Bahía de San Francisco?
- ¿Cuáles son algunos de los mejores / más populares sistemas de gestión de escuelas y universidades disponibles? ¿Tanto comercial y de código abierto como web y fuera de línea?
- ¿Qué tan difícil es comenzar una escuela?
- ¿Cuáles son los efectos en un niño de estar entre los mayores de su clase o los más pequeños?
- ¿Cuáles son las escuelas populares en Silicon Valley que ofrecen una opción de prejardín de infantes?
Ahora las buenas noticias: hay personas que usan lenguajes dinámicos:
Zelle ha estado presionando por Python como primer idioma desde al menos 1999 [2]. Guzdial estableció ‘Media Computation’ con Python como CS1 en Georgia Tech [3] y estudió los efectos [4]. Harward ofrece
CS50 con C, PHP y JavaScript más SQL, CSS y HTML (aunque todavía comienzan con C).
Cuando se trata de marcos como Ruby on Rails: enseñamos Ruby on Rails en nuestro programa BSc MultiMediaTechnology [5] en la Universidad de Salzburgo de Scinece Aplicado. Encontré otro programa en el que se enseña rubí sobre rieles: Ciencias de la computación [6] en la Universidad de Aberdeen. (Si conoce a otros: ¡dígamelo!)
Ahora a la segunda parte de la pregunta: Sí, deberían. Los lenguajes dinámicos son herramientas importantes del mundo real, especialmente en el desarrollo web. Son buenos primeros idiomas, porque le permiten aprender sobre algoritmos y estructuras de datos sin distraerse con sistemas de tipos demasiado complejos.
1) Ousterhout, John (marzo de 1998). “Scripting: programación de nivel superior para el siglo XXI”. IEEE Computer magazine .
2) Zelle, JM (marzo de 1999), ” Python como lengua materna ” Actas de la 13ª Conferencia Anual de Computación del Medio Oeste.
3) Guzdial, (2004) ‘Introducción a la computación y programación en Python, Un enfoque multimedia, 2 / E.Pearson education.
4) vea la lista de referencias de su artículo de wikipedia http://en.wikipedia.org/wiki/Mar…
5) http://multimediatechnology.at/i…
6) http://www.abdn.ac.uk/ncs/comput…