Dry-rb: quoi, pourquoi et comment - cours 4900 frotter. de ThinkNetica, formation 3 webinaires, Date 27 novembre 2023.
Miscellanea / / November 27, 2023
Format
3 webinaires d'une durée de 2 heures
Pratique
Vous ferez une partie de la pratique directement en classe, et une partie vous-même après le webinaire.
Communication
Vous bénéficierez d'une assistance par chat en direct et des webinaires couvriront les questions et erreurs courantes, des exemples de meilleures pratiques et de solutions.
Résultat
- Vous comprendrez pourquoi l'injection de dépendances est nécessaire, comment elle contribue à la maintenabilité, à la testabilité et à la modularité des applications.
- Vous comprendrez ce que les conteneurs d'inversion de contrôle (IoC) ont à voir avec cela et quelles options d'analyse vous pouvez utiliser en fonction des dépendances dans les conteneurs.
- Familiarisez-vous avec le modèle ferroviaire (à ne pas confondre avec la voie ferroviaire) et découvrez comment cette approche aide à écrire une logique métier qui peut échouer à n'importe quelle étape.
- Créez un cadre de service simple dans lequel vous pouvez utiliser n'importe quelle bibliothèque de transport (comme pour les appels grand public et http/rpc) et toutes les bibliothèques pour la persistance, pas seulement AR ou ROM.
- Vous apprendrez quels types de validation peuvent exister et comment écrire un validateur pour n'importe quel schéma de données.
- Vous apprendrez ce qu'il y a dans le développement Ruby en dehors de RoR, grâce auquel vous pourrez comprendre non seulement hanami, mais aussi les frameworks dans d'autres langages (les approches sont utilisées en Python, Java, JS et d'autres écosystèmes)
- Apprenez à utiliser une monade
Exigences pour les participants
1. Un an d'expérience en développement Ruby. Il est important de connaître les éléments de base liés au développement Web, tels que MVC, la capacité d'interroger la base de données et d'écrire des tests minimaux.
2. Profil sur GitHub
3. Compétences de base en ligne de commande et git
4. Désir de comprendre des approches autres que la voie ferroviaire
3 webinaires
Tâches pratiques
Communication avec l'auteur et réponses aux questions
Jour 1. Dépendances, DI, conteneurs IoC. Nous assemblons le cadre du projet.
- Tout d'abord, vous devrez comprendre les dépendances dans le code, c'est-à-dire dans toutes les bibliothèques, classes, modules, fonctions, etc. utilisés dans l'unité principale.
- Examinons deux façons de suivre les dépendances: l'injection de dépendances et la base. Voyons comment DI aide à écrire des tests unitaires et d'intégration.
- Afin de ne pas augmenter la complexité, regardons les conteneurs IoC, dont la mise en œuvre est un conteneur sec.
- Pour la gestion du chargement, pensez au système sec. Enfin, nous examinerons un projet de base qui vous permettra d'ajouter n'importe quelle couche au système.
De ce fait, vous pourrez :
Comprenez ce qu'est dry-rb en général, quel est le style d'architecture en couches et quels problèmes il résout. Et comprenez également comment DI et les conteneurs aident à créer des structures d'application. Ensuite, nous écrirons notre première application en utilisant dry-system.
Jour 2. Nous écrivons la logique métier. Chemin de fer, objets résultat et validation.
- Pour travailler avec la logique métier, nous considérerons le modèle ferroviaire, qui vous permet de relier les étapes techniques d'un processus métier en une chaîne dans laquelle chaque étape peut compléter l'ensemble du processus.
- Pour que le chemin de fer fonctionne, nous utiliserons les notations DO des monades sèches comme moyen d'implémenter le modèle. Discutons de comment et pourquoi utiliser les monades.
- Et pour être sûr que le schéma de données avec lequel nous travaillons et que nous écrivons dans la base de données est valide, nous utiliserons dry-schema et dry-validation.
De ce fait, vous pourrez :
Apprenez à utiliser l'approche ferroviaire pour décrire la logique métier. Vous comprendrez pourquoi les monades sont nécessaires comme objets de résultat et comment valider les données et la logique métier.
Jour 3. Ajout des couches de transport et de persistance. Regardons le reste des bibliothèques dry-rb.
- Examinons les moyens d'ajouter divers transports (http, lapin, kafka) et bibliothèques de persistance (rom, suite, etc.) et développons notre projet.
- Examinons brièvement les bibliothèques sèches restantes et parlons de l'endroit où les utiliser. Et qu’est-ce que les objets fonctionnels ont à voir là-dedans ?
- Discutons de ce qui peut être fait ensuite avec la structure du flan et comment la modifier. Que ajouter, que supprimer, comment accéder à la tranche et à la structure hexagonale.
Par conséquent:
Assemblons le système en une seule pièce.
Voyons comment ajouter n'importe quel type de couche de transport et de persistance.
Regardons les bibliothèques restantes de l'écosystème dry-rb.
Discutons des autres étapes de développement ou d'utilisation d'un flan fini.