Upgrade to Pro — share decks privately, control downloads, hide ads and more …

PIT - Introducción a la programación con Julia

PIT - Introducción a la programación con Julia

Avatar for Abraham Zamudio

Abraham Zamudio

June 30, 2025
Tweet

More Decks by Abraham Zamudio

Other Decks in Education

Transcript

  1. Silabo del curso PIT - Introducción a la programación con

    Julia 2025 ​ ​ Profesor Abraham Zamudio Abraham Zamudio
  2. 1.​ Datos generales del curso Asignatura : Introducción a la

    programación con Julia Horas​ : 16 hrs (4 hrs / clase)​ 2.​ Presentación ​ Diseñado meticulosamente para programadores con conocimientos básicos que ya están familiarizados con los conceptos fundamentales de la lógica de programación y la sintaxis de al menos un lenguaje (como Python, R, C/C++, etc.), este curso está concebido como una expansión de sus horizontes y una inmersión guiada en el fascinante mundo de Julia. No solo aprenderán un nuevo lenguaje, sino que descubrirán una herramienta poderosa que redefine la forma en que se abordan los problemas computacionales de alta demanda. Julia no es solo otro lenguaje en la vasta constelación de herramientas de desarrollo; es una alternativa de vanguardia que combina la simplicidad y la expresividad de los lenguajes de scripting con el rendimiento vertiginoso de los lenguajes compilados. Esta característica única lo convierte en una opción ideal para la computación aplicada de alta demanda de computo, donde la velocidad es crucial para simulaciones complejas, modelos matemáticos y el procesamiento de grandes volúmenes de datos. Su diseño inherente para el análisis de datos lo posiciona como un competidor serio en el ecosistema de la ciencia de datos, permitiendo a los usuarios realizar manipulaciones, transformaciones y análisis estadísticos con una eficiencia sin precedentes. Además, su creciente ecosistema de paquetes y su enfoque en el "despacho múltiple" lo hacen increíblemente potente para el desarrollo en el campo de la inteligencia artificial, desde el aprendizaje automático hasta las redes neuronales profundas, donde la optimización del rendimiento es vital para entrenar modelos robustos y ejecutar inferencias rápidas. A lo largo de este curso intensivo de 16 horas, cuidadosamente estructuradas y distribuidas en 4 sesiones dinámicas de 4 horas cada una, los participantes no solo escucharán sobre Julia, sino que lo experimentarán de primera mano. El enfoque que le doy al curso es eminentemente práctico y progresivo, asegurando que cada concepto se construya sobre el anterior, consolidando el conocimiento a través de ejemplos del mundo real, ejercicios interactivos y pequeños proyectos que desafiarán a los estudiantes a aplicar lo aprendido de inmediato. Creo firmemente que la mejor manera de dominar un lenguaje es usándolo activamente, resolviendo problemas y experimentando con sus capacidades. Cada sesión ha sido diseñada para maximizar el aprendizaje, combinando explicaciones claras y concisas de la teoría subyacente con demostraciones en vivo y tiempo dedicado a la práctica guiada. Al finalizar este curso, los participantes no solo habrán adquirido una comprensión fundamental de la sintaxis y la semántica de Julia, sino que también habrán desarrollado la confianza para abordar problemas de programación más complejos. Están equipados con las herramientas y el conocimiento necesarios para comenzar a explorar las vastas aplicaciones de Julia en sus propios campos de interés, ya sea en la investigación académica, el desarrollo de software o el análisis de datos industriales. Este es solo el comienzo de su viaje con Julia, un viaje que promete eficiencia, potencia y una comunidad en rápido crecimiento. Abraham Zamudio
  3. 3.​ Objetivo general del curso Capacitar a programadores con conocimientos

    básicos en los fundamentos del lenguaje de programación Julia, dotándolos de las habilidades esenciales para comprender su ecosistema, manipular datos, implementar estructuras de control y funciones, y realizar visualizaciones básicas, con el fin de que puedan desarrollar soluciones eficientes para la computación científica, el análisis de datos y el aprendizaje automático. 4.​ Objetivos específicos del curso ​ •​ Comprender y aplicar los fundamentos del ecosistema de Julia •​ Dominar las estructuras de control de flujo •​ Manejar y organizar datos estructurados •​ Desarrollar y utilizar funciones personalizadas •​ Realizar visualizaciones básicas de datos ​ ​ 5.​ Resultados de aprendizaje ​ Al finalizar el curso el alumno: •​ Aplica de manera útil las características que tiene el lenguaje de programación Julia a problemas reales que requieren un análisis más profundo. •​ Conoce y es capaz de implementar algoritmos para resolver problemas prácticos. •​ Identifica, selecciona y combina los algoritmos enseñados en el curso, y los aplica en casos de interés para su carrera y/o trabajo. 6.​ Metodología El desarrollo de las sesiones se efectuará mediante exposiciones del profesor, las mismas que se manejan en forma dinámica e interactiva con los alumnos, relacionando cada uno de los conceptos teóricos con casos prácticos. Asimismo, se aplicarán casos de estudio durante el desarrollo del curso con la finalidad de que los participantes resuelvan y presenten soluciones de acuerdo al esquema metodológico asignado por el profesor del curso. Abraham Zamudio
  4. 7.​ Contenido por Clases : ​ # DE HORAS MODULO

    I 4hrs Sesión 1 : Primeros pasos con Julia​ Ecosistema de Julia •​ Características y ventajas de Julia •​ Julia vs. Python Variables en Julia •​ Tipos de datos numéricos •​ Tipos de datos alfanuméricos •​ Tipo de datos booleanos Operadores en Julia •​ Operadores aritméticos •​ Operadores de comparación •​ Operadores booleanos 4hrs Sesión 2 : Estructuras de control​ •​ Estructura condicional •​ Estructuras repetitivas 4hrs Sesión 3 : Datos estructurados •​ Vectores •​ Matrices •​ Arrays •​ Tuplas •​ Diccionarios •​ Conjuntos 4hrs Sesión 4 : Creación de funciones y Gráficos •​ Implementación de Funciones •​ Paquetes gráficos 8.​ Prerrequisitos : •​ Un Primer curso sobre algoritmos. •​ Algebra lineal y Estadística Descriptiva. 9.​ Bibliografía recomendada •​ Dash, N. (2024). Ultimate Parallel and Distributed Computing with Julia For Data Science: Excel in Data Analysis, Statistical Modeling and Machine Learning by leveraging MLBase. jl and MLJ. jl to optimize workflows (English Edition). Orange Education Pvt Ltd. •​ Phillips, L. (2023). Practical Julia: A Hands-on Introduction for Scientific Minds. No Starch Press. •​ Engheim, E. (2023). Julia as a Second Language. Simon and Schuster. •​ Gao, K., Mei, G., Piccialli, F., Cuomo, S., Tu, J., & Huo, Z. (2020). Julia language in machine learning: Algorithms, applications, and open issues. Computer Science Review, 37, 100254. Abraham Zamudio