Donner des moyens aux services publics avec .NET MAUI et Azure : l’histoire de la réussite de Civica
Client
Civica
Produits & services
.NET MAUI
Azure
Secteur
Secteur public
Taille de l’organisation
Grand (1 000 – 9 999 employés)
Pays/région
Royaume-Uni
Civica : partenaire de confiance qui favorise la transformation numérique dans tous les secteurs
Civica, partenaire agréé par Microsoft de longue date, est un champion GovTech mondial qui se concentre sur le développement de logiciels et de services cloud critiques qui font partie intégrante de la vie quotidienne des citoyens du monde entier. Spécialisée dans la fourniture d’applications innovantes et de haute qualité, l’expertise de Civica couvre l’administration centrale et locale, la santé et les soins, ainsi que l’éducation. Leur équipe de développeurs .NET hautement qualifiée a créé près de 30 applications publiées sous leur nom et bien plus encore pour les clients.
Leur parcours dans le développement mobile a commencé en 2018, passant d’Angular et Ionic à Xamarin.Forms pour tirer parti de leur expertise .NET. Aujourd’hui, le centre d’excellence du développement mobile de Civica, dirigé par Conor Breen (Technical Architect (Mobile)) et Niall Url (Technical Architect), se concentre sur la création d’applications multiplateformes évolutives optimisées par .NET MAUI et Microsoft Azure. "Notre équipe est passée de cinq personnes à Belfast à une présence mondiale, y compris des collègues à Vadodara, en Inde", ajoute Niall.



Création de solutions robustes et réutilisables avec .NET MAUI et Azure
Efficacité grâce à la réutilisation
L’équipe de Civica a créé une infrastructure robuste de composants réutilisables, comprenant plus de 35 packages NuGet. Ces packages incluent des classes d’assistance, des composants, des vues et des exemples de dispositions qui accélèrent le développement d’applications et garantissent la cohérence entre les projets.
"L’idée derrière la création et la gestion de notre propre ensemble de frameworks était que, à mesure que nous développerions de plus en plus d’applications, nous allions créer de plus en plus de composants réutilisables.\ »
Une chose en particulier a aidé l’équipe Civica à être productive dès le premier jour lors du démarrage d’un nouveau projet. En plus du moteur de création de modèles .NET, ils ont créé leurs modèles d’application « accélérateur », qui se trouve à côté de leur infrastructure interne. Civica met en packages ces solutions de modèle « accélérateur » en tant que packages NuGet de modèle qui peuvent ensuite être facilement utilisés pour l’installation sur l’interface de ligne de commande .NET et être utilisés pour déployer de nouvelles solutions pour les projets de champ vert avec une seule commande. La possibilité de créer leurs propres modèles pour les nouveaux projets et de les configurer de manière à pouvoir les utiliser en utilisant des indicateurs de fonctionnalités par l’utilisateur final a permis de gagner beaucoup de temps.
"Cette approche a permis de gagner beaucoup de temps en intégrant très rapidement la structure et les fonctionnalités dans une série d’applications.\ »
Transition vers .NET MAUI
La migration vers .NET MAUI a été une évolution naturelle pour Civica. Malgré les courbes d’apprentissage initiales, l’équipe s’est rapidement adaptée, bénéficiant de la structure de projet améliorée et de la cohérence avec l’écosystème .NET.
"Le processus de migration semble difficile au début, mais cela a été plus facile à mesure que l’expérience de l’équipe a augmenté. Une cohérence accrue avec le reste de .NET, comme l’approche de démarrage du « générateur d’applications », a été un excellent ajout.\ »
Exemples d’applications notables
- Civica Spydus : application complémentaire pour les bibliothèques publiques du monde entier, permettant la recherche, l’emprunt et le renouvellement de livres. S’appuyant sur des API .NET 8 et Azure Cognitive Services.
- Civica Learning : application eLearning qui prend en charge les normes SCORM/xAPI, conçue avec des composants .NET MAUI et Azure pour une utilisation hors connexion et des fonctionnalités de synchronisation.
- Civica MyDay : application de planification et de création de listes de soins de santé utilisant Azure Functions pour les microservices et Azure B2C pour l’authentification.
- Civica Cx : une application de gestion de l’hébergement social migrée de Xamarin.Forms vers .NET MAUI, tirant parti d’Azure B2C et de l’authentification multifacteur pour un accès sécurisé.
Avantages de .NET MAUI
.NET MAUI a fourni à Civica de nombreux avantages qui simplifient le développement et améliorent les résultats :
- Structure de projet unique : simplifie le partage des ressources et l’organisation du code, en conservant le codebase propre et gérable.
- Réutilisation et productivité : étend la réutilisation des composants sur les plateformes mobiles, de bureau et web, ce qui réduit considérablement le temps de développement.
- Accès aux fonctionnalités natives : permet d’accéder facilement aux fonctionnalités de plateforme sous-jacentes, améliorant ainsi l’expérience utilisateur grâce à des optimisations spécifiques à la plateforme.
- Qualité et test du code : l’injection de dépendances intégrée et la prise en charge des tests unitaires ont permis à Civica de maintenir une architecture propre et des normes de qualité rigoureuses.
- Communauté et open source : la participation à la communauté .NET MAUI open source active a permis à Civica de contribuer aux et de tirer parti des améliorations continues.
Stimuler l’innovation et l’impact avec .NET MAUI et Azure
Civica a tiré plusieurs avantages notables de .NET MAUI, notamment un développement plus rapide des applications, une amélioration de la qualité du code et une meilleure réutilisation au sein des équipes et des charges de travail. Conor Breen fait l'éloge de la flexibilité permettant de mélanger les technologies natives et les technologies basées sur le web, ce qui garantit des performances optimales sur chaque plateforme. Il dit : "La possibilité de combiner des technologies natives et des technologies basées sur le web nous a permis de choisir la meilleure approche pour chaque plateforme et de garantir des performances optimales."
Leur adoption des services Azure tels que le hub de notification, Key Vault et Application Insights a renforcé davantage leurs applications, fournissant une sécurité robuste, une authentification transparente et des insights en temps réel. Niall Cunningham : "Nous avons utilisé le hub de notification Azure pour les notifications Push, Azure Key Vault pour le chiffrement et divers autres services Azure pour améliorer les fonctionnalités et la sécurité de nos applications."
Avec .NET MAUI et Azure, Civica crée une expérience de développement unifiée qui garantit la cohérence entre les applications mobiles, web et de bureau, ce qui favorise l’efficacité et l’excellence dans chaque projet.
"La possibilité de créer nos solutions mobiles au même standard que nos applications web et de bureau, à l’aide des mêmes outils et infrastructures, était un excellent moyen de maintenir la cohérence au sein de nos expériences de développement et de consommateurs.\ »
À l’avenir, Civica est heureux d’explorer les intégrations avec les services hébergés par Azure et les technologies .NET, pour encourager la nouvelle génération d’applications intelligentes.
Prêt à démarrer ?
Notre tutoriel étape par étape vous aidera à démarrer .NET MAUI sur votre ordinateur.