Descargo de responsabilidad: no estoy totalmente calificado para responder esta pregunta, pero tengo opiniones de todos modos.
Depende mucho del enfoque que esté utilizando para construir un plan de estudios. El plan de estudios tradicional de CS es bastante ascendente, y al menos al principio de la etapa CS1 / 2 no utilizará mucho de ningún lenguaje de programación. Esto es así por diseño, ya que CS es tan importante sobre teoría como práctica; La mayor parte de todo lo que haga implicará implementar las estructuras y algoritmos que usará más adelante para una codificación de alto nivel. Es probable que cualquier lenguaje diseñado después de alrededor de 1985 tenga los tipos de contenedor básicos, etc., integrados en la biblioteca estándar o (en el caso de Perl, por ejemplo) en el lenguaje mismo. Si todo lo que está haciendo es codificar, nunca necesitará implementar una clasificación rápida o una cola de prioridad usted mismo; el currículum tradicional de CS, por otro lado, supone que hay muchas posibilidades de que usted sea quien escriba la biblioteca para que otra persona la use.
Sin embargo, echemos un vistazo a lo que está haciendo el MIT con su introducción 6.01 al curso EECS versus su antigua estructura e interpretación 6.001 de programas de computadora. Cuando el MIT hizo el cambio, hubo un error al reemplazar Scheme como el lenguaje de enseñanza con Python, pero eso ni siquiera comienza a cubrir lo que realmente cambió en su enfoque (UC Berkeley todavía enseña un SICP modificado en Python, por lo menos al menos algunas personas la distinción es irrelevante). Gerald Sussman, uno de los autores del texto del SICP, apoyó plenamente el cambio a pesar de la molestia de algunos tradicionalistas, y basó su apoyo en la idea de que el ejercicio fundamental de la programación ya no es el enfoque de abajo hacia arriba que era tradicionalmente enseñó, pero fue más una cuestión de escribir código de pegamento entre bibliotecas. (Sussman es miembro de la junta de la Free Software Foundation, por lo que es justo decir que fue una parte fundamental de ese cambio cultural, pero esa es otra historia completamente). Aquí es donde un lenguaje más nuevo como Swift se vuelve útil.
- Estoy en una universidad inglesa de segundo o tercer nivel haciendo mi primer año. ¿Cómo puedo cambiar mi universidad a una mejor?
- ¿Es XIMB Bhubaneswar una buena universidad de gestión?
- Colegios y universidades: ¿Qué debo hacer como estudiante universitario para obtener una maestría en arquitectura del MIT?
- ¿Cuánto tiempo lleva generalmente terminar el título de MSCS en el Instituto de Tecnología de Rochester (RIT), incluidos 3 cursos puente y cooperativo?
- Me gradué con una licenciatura en Ciencias Políticas. ¿Qué campos de estudio están abiertos para mí en el nivel de posgrado?
Cuando comienzas a mirar el código de usuario en gran medida como código de pegamento en lugar de los fundamentos del sistema, se convierte en algo así como enseñar matemática primaria con calculadoras: eventualmente necesitas saber cómo hacer lo básico, pero evitando las cosas de bajo nivel que realmente tiene más sentido en un curso avanzado hace que sea más fácil saltar al diseño de nivel superior. (Además, ¿es realmente justo obligar a un estudiante principiante a tener que lidiar con punteros nulos? Es por eso que C ++ agregó referencias). La biblioteca estándar de Swift se basa en Cocoa FoundationKit, que tenía la reputación de ser muy bien diseñada y práctica. el camino de regreso a los primeros días de NeXT. Solo hay tres tipos principales de colecciones en Swift estándar, pero puedes hacer muchísimo con esos tres tipos. (Lo mismo se aplica a Python, que parece haberse convertido en la respuesta de 2010 a la básica de 1980 para enseñar a los niños a programar incluso fuera del MIT. No veo ningún problema con esto).
En general, diría que es bastante útil para proyectos personales porque puedes poner lo que estás aprendiendo a usar más rápido con un lenguaje mucho más moderno que C, Pascal o incluso Java. Sin embargo, como lenguaje de instrucción, no creo que los currículos de CS realmente hayan alcanzado el estado actual del arte, y dependiendo de su curso, podría ser difícil de integrar.