GNU/Linux >> Tutoriels Linux >  >> Linux

3 raisons pour lesquelles Quarkus 2.0 améliore la productivité des développeurs sous Linux

Quelle que soit la durée de votre travail en tant que développeur d'applications et quel que soit le langage de programmation que vous utilisez, vous avez probablement encore du mal à augmenter la productivité de votre développement. De plus, de nouveaux paradigmes, notamment le cloud computing, DevOps et le développement piloté par les tests, ont considérablement accéléré le cycle de vie du développement pour les développeurs individuels et les équipes multifonctionnelles.

Vous pourriez penser que les outils open source pourraient aider à résoudre ce problème, mais je dirais que de nombreux frameworks et outils de développement open source pour le codage, la construction et les tests aggravent ces défis. De plus, il n'est pas facile de trouver les outils de développement Kubernetes appropriés à installer sur les distributions Linux en raison des dépendances du système et des restrictions de prise en charge.

Heureusement, vous pouvez augmenter la productivité du développement sur Linux avec Quarkus, une pile Java native de Kubernetes. Quarkus 2.0 est sorti récemment avec de nouvelles fonctionnalités utiles pour les tests dans la console développeur.

UX/UI développeur interactif

Plus de ressources Linux

  • Aide-mémoire des commandes Linux
  • Aide-mémoire des commandes Linux avancées
  • Cours en ligne gratuit :Présentation technique de RHEL
  • Aide-mémoire sur le réseau Linux
  • Aide-mémoire SELinux
  • Aide-mémoire sur les commandes courantes de Linux
  • Que sont les conteneurs Linux ?
  • Nos derniers articles Linux

Si vous avez besoin d'ajouter plus de 10 dépendances (par exemple, des connexions de base de données, un mappage objet-relationnel, un formatage JSON, des spécifications d'API REST) ​​à votre projet Java Maven, vous devez définir plus de 60 configurations avec des clés et des valeurs dans un ou plusieurs application.properties des dossiers. Plus de configurations réduisent la lisibilité pour les développeurs individuels et sont plus difficiles à gérer pour les équipes de développeurs.

Quarkus a une interface interactive pour afficher toutes les dépendances qui ont été ajoutées. Il est disponible sur localhost:8080/q/dev point de terminaison après avoir démarré le mode de développement de Quarkus avec le mvn quarkus:dev commande. Vous pouvez également mettre à jour les configurations dans l'interface utilisateur (UI) DEV, comme le montre la figure 1, et les modifications seront automatiquement synchronisées avec application.properties fichier.

(Remarque :Vous pouvez trouver l'intégralité du code d'application Quarkus pour cet article dans mon référentiel GitHub.)

Meilleurs tests continus

Lors du développement d'une application, qu'il s'agisse d'un monolithe ou de microservices, vous devez tester votre code. Souvent, une équipe d'assurance qualité (QA) dédiée utilisant des outils d'intégration continue (CI) externes est responsable de la vérification des tests unitaires. Cela a fonctionné pendant des années, et c'est toujours le cas, mais Quarkus permet aux programmeurs d'exécuter des tests dans l'environnement d'exécution où leur code s'exécute pendant son développement. Quarkus 2.0 fournit cette fonctionnalité de test continu via l'interface de ligne de commande (CLI) et l'interface utilisateur DEV, comme illustré à la figure 2.

Le test continu ne s'exécute pas lorsqu'une application Quarkus démarre. Pour le démarrer, cliquez sur "Tests non exécutés" en bas à droite de l'interface utilisateur DEV. Vous pouvez également ouvrir un terminal Web en cliquant sur "Ouvrir" sur le côté gauche de l'interface utilisateur DEV. Ces deux options sont mises en évidence dans la figure 2, et un exemple de résultat de test est illustré dans la figure 3.

Si vous modifiez le code (par exemple, "Hello" en "Hi" dans le hello() méthode) mais pas le code de test (que la fonctionnalité fonctionne ou non), le test échouera, comme illustré à la figure 4. Pour résoudre ce problème, mettez à jour le code de test avec le code logique.

Vous pouvez relancer les cas de test implémentés dans le src/test/java/ annuaire. Cette fonctionnalité évite d'avoir à s'intégrer à un outil CI externe et garantit la fonctionnalité tout en développant en permanence la logique métier.

Zéro configuration avec les services de développement

Lorsque vous développez pour une cible spécifique, il est important que votre environnement de développement reflète fidèlement l'environnement dans lequel il est censé s'exécuter. Cela peut rendre l'installation d'une base de données dans un endroit comme un environnement local un peu difficile. Si vous développez sous Linux, vous pouvez exécuter la base de données requise dans un conteneur, mais elles ont tendance à fonctionner différemment en fonction des ressources disponibles, et votre environnement local n'a probablement pas les mêmes ressources que l'environnement de production cible.

Quarkus 2.0 aide à résoudre ce problème en fournissant des services de développement basés sur Testcontainers. Par exemple, vous pouvez tester des applications si elles fonctionnent dans la base de données de production, PostgreSQL, plutôt que dans un magasin de données en mémoire H2 avec les configurations suivantes :

quarkus.datasource.db-kind = postgresql (1)
quarkus.hibernate-orm.log.sql = true

quarkus.datasource.username=person (2)
quarkus.datasource.password=password (3)
quarkus.hibernate-orm.database.generation=drop-and-create

%prod.quarkus.datasource.db-kind = postgresql (4)
%prod.quarkus.datasource.jdbc.url = jdbc:postgresql://db:5432/person (5)
%prod.quarkus.datasource.jdbc.driver=postgresql

quarkus.datasource.devservices.image-name=postgres:latest (6)

Dans le code ci-dessus :

(1) Le type de base de données que vous allez connecter pour le développement et le test

(2) Nom d'utilisateur de la source de données

(3) Mot de passe de la source de données

(4 ) Le type de base de données que vous connecterez pour la production

(5) L'URL de la source de données

(6) Le nom de l'image du conteneur à utiliser pour les fournisseurs de DevServices ; si le fournisseur n'est pas basé sur un conteneur (par exemple, une base de données H2), cela n'a aucun effet

Lorsque Quarkus redémarre avec la nouvelle configuration, l'image du conteneur Postgres sera créée et commencera à s'exécuter automatiquement, comme illustré à la figure 5.

Cette fonctionnalité vous permet de supprimer le test d'intégration du magasin de données de production. Cela augmente également la productivité de votre développement en évitant les disparités environnementales dans la boucle de développement.

Conclusion

Quarkus 2.0 augmente la productivité des développeurs avec des tests continus intégrés, une interface utilisateur DEV interactive et des services de développement. De plus, il offre des fonctionnalités supplémentaires pour améliorer les expériences des développeurs telles que le codage en direct, le mode de développement à distance sur Kubernetes et des configurations unifiées qui accélèrent la boucle de développement. Quarkus 2.0 ne fait certainement pas exception ! Essayez-le par vous-même ici !


Linux
  1. 10 raisons d'aimer Linux en 2021

  2. 3 feuilles de triche Linux essentielles pour la productivité

  3. 5 raisons d'utiliser les gestionnaires de packages Linux

  4. 5 raisons pour lesquelles j'aime coder sous Linux

  5. Comment utiliser la suite de productivité de KDE, Kontact

8 raisons d'utiliser l'environnement de bureau Xfce Linux

3 outils en ligne de commande pour simuler la productivité

11 raisons pour lesquelles vous devriez passer à Linux

11 raisons pour lesquelles Linux est meilleur que Windows

Les 10 meilleures raisons d'utiliser Linux

Linux vs Mac OS :15 raisons d'utiliser Linux au lieu de Mac OS