Расширение возможностей государственных служб с помощью .NET MAUI и Azure: история успеха Civica
Клиент
Civica
Продукты и службы
.NET MAUI
Azure
Промышленность
Государственный сектор
Размер организации
Большой (1000–9 999 сотрудников)
Страна/регион
Великобритания
Civica: надежный партнер, продвигающий цифровую трансформацию во всех секторах
Civica, давний аккредитованный партнер Майкрософт, является мировым лидером в области GovTech, занимающимся разработкой критически важного облачного программного обеспечения и услуг, которые являются неотъемлемой частью повседневной жизни граждан по всему миру. Специализируясь на разработке инновационных высококачественных приложений, компания Civica специализируется на работе в сфере центрального и местного самоуправления, здравоохранения и образования. А их высококвалифицированная команда разработчиков .NET создала около 30 приложений, опубликованных под их именем, и еще больше для клиентов.
Их путь в мобильной разработке начался в 2018 году с перехода с Angular и Ionic на Xamarin.Forms, чтобы использовать свой опыт в .NET. Сегодня центр передового опыта в области разработки мобильных приложений Civica, возглавляемый Конором Брином (технический архитектор (мобильные приложения)) и Ниаллом Каннингемом (технический архитектор), фокусируется на создании масштабируемых кроссплатформенных приложений на базе .NET MAUI и Microsoft Azure. "Наша команда выросла с пяти человек в Белфасте до глобального присутствия, включая коллег в Вадодаре, Индия", — добавляет Ниалл.



Создание надежных, повторно используемых решений с помощью .NET MAUI и Azure
Эффективность за счет возможности повторного использования
Команда Civica создала надежную структуру повторно используемых компонентов, включающую более 35 пакетов NuGet. Эти пакеты включают вспомогательные классы, компоненты, представления и примеры макетов, которые ускоряют разработку приложений и обеспечивают согласованность между проектами.
"Идея создания и поддержки нашего собственного набора фреймворков заключалась в том, что по мере разработки все большего количества приложений мы будем создавать все больше и больше повторно используемых компонентов".
В частности, одна вещь помогла команде Civica быть продуктивной с первого дня запуска нового проекта. На основе шаблонизатора .NET они создали свои шаблоны приложений-"ускорителей", которые работают вместе с их внутренней структурой. Civica упаковывает эти шаблонные решения "ускорителя" в виде шаблонных пакетов NuGet, которые затем можно легко использовать для установки в интерфейс командной строки .NET (CLI) и применять для развертывания новых решений для проектов с нуля с помощью всего одной команды. Возможность создавать собственные шаблоны для новых проектов и настраивать их таким образом, чтобы конечный пользователь мог настраивать их с помощью флагов функций, значительно экономит время.
"Этот подход позволил значительно сэкономить время, поскольку удалось очень быстро внедрить структуру и функциональность в ряд приложений".
Переход на .NET MAUI
Переход на .NET MAUI стал естественным этапом эволюции Civica. Несмотря на первоначальные трудности в обучении, команда быстро адаптировалась, извлекая выгоду из улучшенной структуры проекта и согласованности с экосистемой .NET.
"Сначала процесс миграции казался сложным, но по мере накопления опыта команды он становился все проще. Отличным дополнением стала большая согласованность с остальной частью .NET, например, подход к запуску "конструктора приложений".
Известные примеры приложений
- Civica Spydus: Сопутствующее приложение для публичных библиотек по всему миру, позволяющее искать книги, оформлять заказы и продлевать подписку. Поддерживается API .NET 8 и Azure Cognitive Services.
- Civica Learning: Приложение электронного обучения, поддерживающее стандарты SCORM/xAPI, созданное с использованием компонентов .NET MAUI и Azure для автономного использования и возможностей синхронизации.
- Civica MyDay: Приложение для планирования и составления расписания приема в здравоохранении, использующее Azure Functions для микросервисов и Azure B2C для аутентификации.
- Civica Cx: Приложение для управления социальным жильем перенесено с Xamarin.Forms на .NET MAUI, используя Azure B2C и MFA для безопасного доступа.
Преимущества .NET MAUI
.NET MAUI предоставил Civica многочисленные преимущества, которые оптимизируют разработку и улучшают результаты:
- Единая структура проекта: Упрощает совместное использование ресурсов и организацию кода, сохраняя чистоту и управляемость кодовой базы.
- Возможность повторного использования и производительность: Расширяет возможности повторного использования компонентов на мобильных, настольных и веб-платформах, значительно сокращая время разработки.
- Доступ к собственным функциям: Обеспечивает легкий доступ к базовым функциям платформы, улучшая пользовательский опыт с помощью оптимизаций, специфичных для платформы.
- Качество кода и тестирование: Встроенная технология внедрения зависимостей (DI) и поддержка модульного тестирования помогли Civica поддерживать чистую архитектуру и строгие стандарты качества.
- Сообщество и открытый исходный код: Участие в активном сообществе разработчиков программного обеспечения с открытым исходным кодом .NET MAUI позволило Civica внести свой вклад и воспользоваться преимуществами постоянных улучшений.
Внедрение инноваций и влияния с помощью .NET MAUI и Azure
Civica реализовала ряд заметных преимуществ с помощью .NET MAUI, включая более быструю разработку приложений, улучшенное качество кода и улучшенную возможность повторного использования в разных командах и рабочих нагрузках. Конор Брин высоко оценивает гибкость сочетания собственных и веб-технологий, которая обеспечивает оптимальную производительность на каждой платформе. Он говорит: "Возможность сочетания собственных и веб-технологий позволила нам выбрать лучший подход для каждой платформы и обеспечить оптимальную производительность".
Внедрение сервисов Azure, таких как Notification Hub, Key Vault и Application Insights, еще больше укрепило их приложения, обеспечив надежную безопасность, бесперебойную аутентификацию и аналитику в режиме реального времени. Ниалл Каннингем: "Мы использовали Azure Notification Hub для push-уведомлений, Azure Key Vault для шифрования и различные другие службы Azure для улучшения функциональности и безопасности наших приложений".
С помощью .NET MAUI и Azure компания Civica создает унифицированный процесс разработки, который обеспечивает согласованность мобильных, веб- и настольных приложений, повышая эффективность и совершенство каждого проекта.
"Возможность разрабатывать наши мобильные решения на том же уровне, что и наши веб- и настольные приложения, используя те же инструменты и инфраструктуру, стала фантастическим способом поддержания единообразия как в процессе разработки, так и в процессе взаимодействия с потребителями".
Заглядывая вперед, Civica с нетерпением ждет возможности интеграции с сервисами, размещенными на платформе Azure, и технологиями .NET для создания следующего поколения интеллектуальных приложений.
Готовы приступить?
Наше пошаговое руководство поможет вам запустить .NET MAUI на вашем компьютере.