Envíanos tu consulta
Términos y condiciones *
*Si no puedes asistir en directo de facilitaremos un enlace para verlo en diferido
logoImagina
iconoCurso

Curso completo de Crystal

DISPONIBLE EN MODALIDAD:
Crystal es un lenguaje de programación moderno que combina la facilidad de uso de un lenguaje de scripting con la velocidad y potencia de un lenguaje compilado. Está diseñado para ser utilizado para aplicaciones web, sistemas operativos, bases de datos y otros proyectos de computación. Con Crystal, los programadores pueden escribir código que se siente como un lenguaje de scripting y se ejecuta mucho más rápido que un lenguaje de scripting.
iconClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClient
Formación en Crystal bonificable para empresas

¿A quién va dirigido?

Desarrolladores que quieran aprender los fundamentos del desarrollo en Crystal y conocer todo lo necesario para crear aplicaciones para el mundo real

Objetivos

  • Entender los fundamentos de la programación con Crystal
  • Desarrollar habilidades prácticas para crear aplicaciones web, sistemas operativos, bases de datos y otros proyectos con Crystal
  • Aprender cómo crear aplicaciones web eficientes y seguras con Crystal
  • Comprender cómo optimizar el rendimiento de los programas escritos en Crystal
  • Aprender cómo trabajar con herramientas de desarrollo avanzadas para proyectos de computación

¿Qué vas a aprender?

Crystal es un lenguaje de programación moderno que combina la facilidad de uso de un lenguaje de scripting con la velocidad y potencia de un lenguaje compilado. Está diseñado para ser utilizado para aplicaciones web, sistemas operativos, bases de datos y otros proyectos de computación. Con Crystal, los programadores pueden escribir código que se siente como un lenguaje de scripting y se ejecuta mucho más rápido que un lenguaje de scripting.

Requisitos

  • Tener conocimientos fundamentales de programación
  • Tener un equipo con acceso a un usuario con permisos de instalación y conexión estable a internet
  • Tener el Compilador de Crystal, Visual Studio Code y Git instalados previamente en el equipo que se emplee durante la formación

Temario del curso

tema 1

Introducción a Crystal y puesta en marcha

  • ¿Qué es Crystal?
  • Historia de Crystal y el lenguaje en la actualidad
  • Ventajas de usar Crystal
  • Usos de Crystal más extendidos
  • ¿Cómo funciona Crystal?
  • Introducción al Compilador de Crystal
  • Descargar e instalar Crystal
  • Particularidades de instalaciones en distintos Sistemas Operativos
  • Configuración fundamental de del IDE para desarrollar en Crystal
  • Analizando y configurando la interfaz de Crystal
  • Hola Mundo en Crystal
  • Otros IDEs con los que podemos desarrollar con Crystal
  • Entornos de Desarrollo Online: Replit.com
  • Creación de cuenta en Replit.com
  • Creación de un proyecto Crystal en Replit.com a partir de plantillas disponibles
  • Escribiendo tu primer "Hola Mundo" en proyecto Crystal de Replit.com
  • Ejecutando el archivo main.py desde entorno Replit.com
  • Compartiendo proyecto Replit
  • Integración de Replit.com con Github
  • Descargando proyecto Replit en formato .ZIP
  • Redacción de comentarios
  • Comentarios multilínea
  • Los comentarios como método de documentación
  • Declaración de variables y asignación de valores
  • Formateo de cadenas de texto para incorporar valores de variables
  • Imprimiendo por consola variables
tema 2

Sintaxis fundamental de Crystal

  • Comentarios
  • Variables
  • Tipos de datos primitivos
  • Tipos de datos complejos
  • Números
  • Cadenas de texto y caracteres
  • Vectores
  • Listas
  • Matrices
  • Matrices de varias dimensiones
  • Factores
  • Datos
  • Operaciones con distintos tipos de datos
  • ¿Qué es la conversión entre tipos?
  • ¿Cómo definimos valores constantes en Crystal?
tema 3

Trabajando con tipos numéricos y booleanos

  • Números enteros
  • Números flotantes
  • Números complejos
  • Trabajando con fracciones
  • Trabajando con decimales
  • Trabajando con funciones matemáticas
  • Trabajando con funciones estadísticas
  • Operadores numéricos
  • Operadores de asignación
  • Orden de ejecución según operadores y uso de parentesis
  • Tipos de datos booleanos
  • Operadores de comparación
  • Evaluación de operaciones lógicas
  • Operadores de pertenencia
  • Operadores de identidad
  • Operadores binarios
tema 4

Trabajando con cadenas de texto

  • ¿Usamos comillas simples, dobles o triples?
  • Textos multilínea
  • Concatenación de textos
  • Obteniendo caracteres de una cadena de texto a través de sus posiciones
  • Obteniendo porciones de caracteres de una cadena de texto
  • Operaciones esepecíficas con cadenas de texto
  • Expresiones regulares
  • Búsqueda de patrones en cadenas de texto
  • Input de datos externos a través de la consola
  • Obteniendo desde la consola valores numéricos y la transformación necesaria
tema 5

Control de flujos: Condicionales y bucles

  • Introducción
  • Indentación
  • Ámbitos locales y globales
  • Sentencias condicionales con IF, ELIF y ELSE
  • Concatenación de condiciones
  • Operadores ternarios
  • Introducción a la iteración
  • Tipos de datos iterables y estructuras de datos
  • Bucle FOR
  • Obteniendo el índice durante la iteración
  • Anidación de bucles FOR
  • Buenas prácticas trabajando con bucles FOR
  • Bucle WHILE
  • Evitando bucles infinitos con WHILE
  • ¿Cuándo usar un bucle WHILE frente a un bucle FOR?
  • Buenas prácticas trabajando con bucles WHILE
  • Añadiendo mayor control: Break y Continue
  • Buenas prácticas iterando listas y otros tipos de datos complejos
tema 6

Depuración de código y gestión de excepciones

  • Introducción a la depuración de código
  • Herramientas de Depuración en el IDE
  • Definiendo puntos de ruptura
  • Ejecución y pasos durante el proceso de depuración
  • Visualización del valor de variables y objetos en memoria en tiempo real
  • Omitiendo un punto de ruptura
  • Eliminando puntos de ruptura
  • Gestión de errores
  • Propagación de errores
  • Personalización de errores
  • Errores más comunes relativos a sintaxis, iteración y tipado de datos
tema 7

Trabajando con estructuras de datos

  • Destacando algunas funciones built-in para listas y Arrays
  • Destacando algunas funciones built-in para otras estrcuturas complejas de D
  • Obteniendo y buscando valores
  • Ordenación de valores según un criterio
  • Ordenación inversa de valores en listas
  • Encontrar elementos repetidos
  • Añadiendo nuevos valores
  • Eliminando valores existentes
  • Editando valores
tema 8

Declaración de funciones

  • Introducción a las funciones y a la reutilización de código
  • Declaración y definición de funciones
  • Indentación y ámbito dentro de funciones
  • Llamada de funciones
  • Retorno de funciones y recuperación de valores retornados
  • Declaración de parámetros
  • Tipado de parámetros y retorno de funciones
  • Parámetros opcionales con valores por defecto
  • Realizando llamadas a funciones y especificando el parámetro
  • Paso de parámetros por valor y por referencia por defecto
  • Copia al vuelo para evitar el paso por referencia de estructuras de datos
  • Parámetros de longitud variable
  • Documentando nuestras funciones
  • Accediendo a la documentación de nuestras funciones durante la llamada
tema 9

Programación funcional

  • Introducción a los fundamentos de la programación funcional
  • Funciones anónimas: Lambdas
  • Funciones de mapeos sobre secuencias
  • Filter y reduce de la programación funcional
  • Buenas prácticas y recomendaciones
tema 10

Módulos, Paquetes y Namespaces

  • Introducción al concepto de módulo y paquete
  • Arquitectura de un programa de Crystal
  • Módulo principal, módulos auxiliares
  • Importación de módulos
  • Añadiendo alias de un módulo
  • Creación, inicialización y uso de módulos
  • Namespaces y APIs
  • Import absolutos vs relativos
  • Listado de módulos Crystal y sus principales utilidades
  • Trabajando con fechas y horas
  • Buenas prácticas y recomendaciones
tema 11

Programación Orientada a Objetos (POO) en Crystal

  • Introducción a la Programación Orientada a Objetos
  • Diferencia entre POO y Diseño Orientado a Objetos (DOO)
  • Definición de clases
  • Atributos de clases
  • Método constructor
  • Atributos de instancia y palabras reservada self
  • Método destructor
  • Métodos y acciones de clase
  • Métodos privados y públicos
  • Creación de instancias de clases e inicialización de objetos
  • Introducción a la herencia
  • Herencia entre clases
  • Accediendo a la super clase métodos y atributos
  • Polimorfismo
  • Introducción a la abstracción
  • Clases abstractas
  • Introducción a las interfaces
  • Interfaces de acceso a las clases
tema 12

Metaprogramación

  • ¿Qué es la metaprogramación?
  • Cómo llevar a cabo metaprogramación en Crystal a través de plantillas
  • Uso de metaprogramación
  • Ejemplos de metaprogramación
tema 13

Instalador de librerías y Biblioteca de recursos

  • Instalación de librerías en Crystal
  • Introducción a la administración de paquetes de Crystal
  • Instalación de paquetes
  • Listado de paquetes instalados
  • Actualización de paquetes y administración de versiones
  • Desinstalación de paquetes
  • Análisis de la fiabilidad de datos y código fuente de una librería
  • Destacando los paquetes más empleados en proyectos Crystal y sus usos
  • Trabajando la estadística con Crystal
  • Creación de una librería propia en Crystal
  • Publicando y compartiendo nuestras soluciones Crystal
tema 14

Entrada/Salida de ficheros

  • Módulo I/O para tratar con archivos y carpetas
  • Leyendo de un fichero
  • Gestionando permisos
  • Escribiendo en un fichero
  • Cerrando un fichero
  • Serializar y deserializar datos
  • Buenas prácticas y consejos
tema 15

La Asincronía en Crystal y las peticiones HTTPS

  • Introducción a la asincronía
  • Problemas derivados de no controlar correctamente la asincronía en el código
  • Resolviendo la asincronía en Crystal
  • ¿Cómo gestionar errores asíncronos en un código Crystal?
  • Introducción a las peticiones HTTP
  • Verbos y métodos HTTP
  • Códigos de estado
  • Módulo Requests para realizar peticiones HTTP
  • Creando una petición GET y configurando sus cabeceras
  • Obteniendo una respuesta en formato JSON
  • Administrando el código de estado y la cabecera de la respuesta
  • Leyendo el cuerpo del mensaje
  • Buenas prácticas a la hora de gestionar errores
  • Realizando peticiones POST, PUT y DELETE
tema 16

Proyecto Final

  • Enunciado y planteamiento de requisitos
  • Implementación de la solución
  • Revisando que todo funcione correctamente
  • Consejos y siguientes pasos

Curso de Crystal bonificado para Empresas a través de FUNDAE

Somos entidad organizadora de FUNDAE, todas nuestras formaciones se pueden bonificar hasta el 100%, sujeto a vuestro crédito disponible y a cumplir con todos los requisitos de realización establecidos por la Fundación Estatal para el Empleo.

 

Si desconoces el funcionamiento de las bonificaciones, ofrecemos el servicio de gestión en FUNDAE, consúltanos cualquier duda que te surja.

Descargar Guía FUNDAE
imagenFundae
iconClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClient