Dry-rb: qué, por qué y cómo - curso 4900 frotar. de ThinkNetica, capacitación 3 webinars, Fecha 27 de noviembre de 2023.
Miscelánea / / November 27, 2023
Formato
3 seminarios web de 2 horas de duración
Práctica
Parte de la práctica la realizarás en clase y otra parte tú mismo después del seminario web.
Comunicación
Tendrá soporte por chat en vivo y los seminarios web cubrirán preguntas y errores comunes, ejemplos de mejores prácticas y soluciones.
Resultado
- Comprenderá por qué es necesaria la inyección de dependencias y cómo ayuda a la mantenibilidad, la capacidad de prueba y la modularidad de las aplicaciones.
- Comprenderá qué tienen que ver los contenedores de Inversión de Control (IoC) y qué opciones de análisis puede utilizar en función de las dependencias en los contenedores.
- Familiarícese con el patrón ferroviario (que no debe confundirse con el método ferroviario) y aprenda cómo este enfoque ayuda a escribir una lógica de negocios que puede fallar en cualquiera de los pasos.
- Cree un marco de servicio simple en el que pueda usar cualquier biblioteca de transporte (como tanto para llamadas de consumidor como http/rpc) y cualquier biblioteca para persistencia, no solo AR o ROM.
- Aprenderá qué tipos de validación puede haber y cómo escribir un validador para cualquier esquema de datos.
- Aprenderá qué hay en el desarrollo de Ruby fuera de RoR, gracias a lo cual podrá comprender no solo hanami, sino también marcos en otros lenguajes (los enfoques se utilizan en Python, Java, JS y otros ecosistemas).
- Aprende a usar una mónada
Requisitos para los participantes
1. Un año de experiencia en desarrollo de Ruby. Es importante saber cosas básicas relacionadas con el desarrollo web, como MVC, la capacidad de consultar la base de datos y escribir pruebas mínimas.
2. Perfil en GitHub
3. Habilidades básicas de línea de comando y git
4. Deseo de comprender enfoques distintos al de los rieles.
3 seminarios web
Tareas practicas
Comunicación con el autor y respuesta a preguntas.
Día 1. Dependencias, DI, contenedores IoC. Montamos el marco del proyecto.
- Primero, deberá comprender las dependencias en el código, es decir, en cualquier biblioteca, clase, módulo, función, etc. que se utilice en la unidad principal.
- Veamos dos formas de realizar un seguimiento de las dependencias: inyección de dependencias y básica. Veamos cómo DI ayuda a escribir pruebas unitarias y de integración.
- Para no aumentar la complejidad, veamos los contenedores IoC, cuya implementación es un contenedor seco.
- Para la gestión de carga, considere el sistema seco. Finalmente, veremos un proyecto básico que le permitirá agregar capas al sistema.
Como resultado, podrás:
Comprenda qué es dry-rb en general y qué es el estilo de arquitectura en capas y qué problemas resuelve. Y también comprenda cómo la DI y los contenedores ayudan a crear estructuras de aplicaciones. Luego, escribiremos nuestra primera aplicación usando el sistema seco.
Dia 2. Escribimos lógica empresarial. Ferrocarril, objetos de resultado y validación.
- Para trabajar con la lógica empresarial, consideraremos el patrón ferroviario, que permite conectar los pasos técnicos de un proceso empresarial en una cadena en la que cada paso puede completar todo el proceso.
- Para que el ferrocarril funcione, tomaremos notaciones DO de mónadas secas como una forma de implementar el patrón. Analicemos cómo y por qué usar mónadas.
- Y para estar seguros de que el esquema de datos con el que trabajamos y que escribimos en la base de datos es válido, usaremos esquema seco y validación seca.
Como resultado, podrás:
Aprenda a utilizar el enfoque ferroviario para describir la lógica empresarial. Comprenderá por qué se necesitan las mónadas como objetos de resultado y cómo validar los datos y la lógica empresarial.
Día 3. Agregando las capas de transporte y persistencia. Veamos el resto de las bibliotecas de dry-rb.
- Veamos formas de agregar varios transportes (http, Rabbit, Kafka) y bibliotecas de persistencia (rom, Sequel, etc.) y expandir nuestro proyecto.
- Veamos brevemente las bibliotecas secas restantes y hablemos sobre dónde usarlas. ¿Y qué tienen que ver los objetos funcionales con esto?
- Analicemos qué se puede hacer a continuación con la estructura del espacio en blanco y cómo cambiarlo. Qué agregar, qué quitar, cómo llegar a la rebanada y la estructura hexagonal.
Como resultado:
Ensamblemos el sistema en una sola pieza.
Veamos cómo agregar cualquier tipo de capa de transporte y persistencia.
Veamos las bibliotecas restantes del ecosistema dry-rb.
Analicemos otros pasos para el desarrollo o para usar un espacio en blanco terminado.