Saltar al contenido
Logotipo de Trainontech Trainontech

Lenguajes y Fundamentos de Programación · LNG-120

Julia desde cero

Tipos, despacho múltiple y ecosistema científico de Julia con la sintaxis cercana a Python.

Bajo demanda Iniciación 6 módulos · 30 clases

Formato asíncrono Ingeniería / Industria, Desarrollo Julia, JupyterLab

Lo que aprenderás

  • Escribir funciones en Julia con anotaciones de tipo y comprender el sistema de tipos paramétricos.
  • Definir varios métodos de una misma función y entender cómo se resuelve el despacho múltiple.
  • Operar con arrays y matrices aprovechando la difusión con el operador punto.
  • Gestionar paquetes y entornos con Pkg y los ficheros Project.toml y Manifest.toml.
  • Cargar y explorar datos tabulares con DataFrames y CSV y representarlos con Plots.
  • Resolver un problema numérico completo: sistema lineal, integración y ajuste de curva.

Contenido del curso

6 módulos · 30 clases en vídeo · práctica guiada en cada módulo

Módulo 1 · Primeros pasos 5 clases
  • Qué resuelve Julia y en qué se diferencia de Python y R
  • Julia sobre JupyterLab: celdas, REPL y ayuda
  • Sintaxis básica, variables y operadores
  • Cadenas, interpolación y símbolos
  • Control de flujo y comprensiones
Módulo 2 · Funciones y despacho múltiple 5 clases
  • Definir funciones y funciones anónimas
  • Argumentos posicionales, con nombre y valores por defecto
  • Anotar tipos en la firma de una función
  • Métodos múltiples de una misma función
  • Cómo elige Julia el método y cómo comprobarlo
Módulo 3 · El sistema de tipos 5 clases
  • Tipos abstractos y concretos
  • Jerarquía de tipos y subtipado
  • Structs mutables e inmutables
  • Tipos paramétricos
  • Diseñar una jerarquía propia para un problema físico
Módulo 4 · Arrays y álgebra lineal 5 clases
  • Crear e indexar arrays y matrices
  • Difusión con el operador punto
  • Vistas frente a copias
  • LinearAlgebra: sistemas, factorizaciones y valores propios
  • Operaciones sobre filas y columnas
Módulo 5 · Paquetes y datos 5 clases
  • Pkg: añadir paquetes y fijar versiones
  • Project.toml y Manifest.toml para entornos reproducibles
  • Leer ficheros con CSV y trabajar con DataFrames
  • Filtrar, agrupar y resumir tablas
  • Gráficos con Plots y sus backends
Módulo 6 · Cálculo numérico aplicado 5 clases
  • Resolver un sistema de ecuaciones lineales
  • Integración numérica y ecuaciones diferenciales
  • Ajuste de curvas y optimización sencilla
  • Comprobar resultados y controlar el error
  • Proyecto de cierre: modelo numérico completo con datos y gráficas

Requisitos

  • Haber programado antes en cualquier lenguaje, aunque sea a nivel básico.
  • No se necesita experiencia previa con Julia ni con computación científica.
  • Basta con un navegador: se trabaja con Julia sobre JupyterLab.

Descripción

Quien calcula a diario acaba con dos códigos: un prototipo cómodo en un lenguaje interpretado y una versión rápida reescrita en C o Fortran cuando el problema crece. Mantener las dos cuesta tiempo y provoca discrepancias que aparecen en el peor momento, normalmente al validar resultados.

Julia existe para evitar esa duplicidad y este curso enseña por qué funciona. Se recorren los tipos y el despacho múltiple, que son la clave del lenguaje, la manipulación de arrays con difusión, la gestión de entornos con Pkg y el ecosistema científico básico: DataFrames, CSV, Plots y las bibliotecas de álgebra lineal, integración y ajuste. Cada bloque termina con ejercicios numéricos resueltos en el cuaderno.

Al terminar se escriben programas idiomáticos de Julia y se lee código del ecosistema sin perderse entre métodos, tipos paramétricos y macros. Ese es el punto en el que el lenguaje deja de parecer una curiosidad y empieza a sustituir trabajo real. Es la entrada directa al curso avanzado de rendimiento y computación científica, donde se trabajan la estabilidad de tipos, las asignaciones de memoria y el paralelismo.

¿Para quién es este curso?

  • Ingenieros de cálculo y simulación que arrastran prototipos lentos y versiones reescritas en otro lenguaje.
  • Desarrolladores científicos que evalúan Julia para sustituir parte de su código numérico.
  • Personal de I+D que necesita resolver problemas numéricos sin depender de licencias de software comercial.
Bajo demanda

Curso diseñado con la ficha cerrada. Se produce al confirmarse un grupo o un contrato.

Código
LNG-120
Nivel
Iniciación
Público
Ingeniería / Industria, Desarrollo
Entorno
Julia, JupyterLab

Este curso incluye

  • 30 clases en vídeo bajo demanda
  • Práctica íntegramente en JupyterLab, solo con un navegador
  • Tutorización en el campus
  • Acceso desde móvil, tableta y ordenador
  • Actualizaciones cuando cambia la versión de la herramienta
  • Certificado de finalización

Sigue aprendiendo

Cursos relacionados

PY-101Lenguajes y Fundamentos de Programación

Python desde cero

Variables, tipos, operadores, condicionales, bucles y funciones con práctica continua en cuaderno.

PythonGoogle Colab

Iniciación 42 clases

PY-102Lenguajes y Fundamentos de Programación

Estructuras de datos en Python

Listas, tuplas, diccionarios y conjuntos: cuándo usa cada una un programador con oficio.

Python

Iniciación 33 clases

Bajo demanda

DEV-101Lenguajes y Fundamentos de Programación

Git y GitHub para equipos técnicos

Ramas, revisiones y resolución de conflictos con un flujo de trabajo que un equipo puede sostener.

Git

Iniciación 34 clases