Поделиться через


Модернизация приложений GitHub Copilot для разработчиков Java

В этой статье описывается модернизация приложений GitHub Copilot, которая является помощником по искусственному интеллекту, который обеспечивает сквозную поддержку модернизации приложений.

Предприятия часто имеют дело с техническим долгом на протяжении всего цикла разработки, а также обновление сред выполнения Java, платформ и зависимостей является распространенной, но ресурсоемкой задачей. В то же время многие организации стремятся перенести и модернизировать свое хранилище приложений в облако, включающее:

  • Оценка текущего состояния кода, конфигурации и зависимостей
  • Планирование ресурсов Azure
  • Устранение проблем для обеспечения успешной миграции

На основе режима агента GitHub Copilot модернизация приложений GitHub Copilot предлагает предопределенные задачи для распространенных сценариев обновления и миграции при включении отраслевых рекомендаций по запуску приложений в Azure. В то же время она позволяет командам использовать собственные стандарты программирования, политики организации и существующие методики в процессе модернизации.

Основные возможности на первый взгляд

  • Оценка и планирование приложений: анализирует код, конфигурацию и зависимости. Помогает визуализировать каждую задачу в процессе модернизации, от оценки до развертывания.
  • Преобразования кода: предлагает и применяет исправление кода для сценариев обновления и миграции.
  • Сборка, патчинг и тесты: Проверяет, завершена ли сборка проекта успешно после внесения изменений и при необходимости применяет патчи. Выполняет проверки общих уязвимостей и экспозиций (CVE), чтобы уменьшить вероятность воздействия на безопасность. Переносит существующие и создает новые модульные тесты для проверки результатов модернизации и улучшения покрытия тестов.
  • Контейнеризация и развертывание. Создает Dockerfiles для контейнеризации приложений и других артефактов для автоматизации развертывания в Azure.

Модернизация приложений GitHub Copilot интегрирует возможности искусственного интеллекта GitHub Copilot с инструментами с открытым кодом, такими как OpenRewrite, для автоматизации сложных шагов обновления. Он поддерживает проекты Maven и Gradle и предназначен для обновления между версиями Java 8, 11, 17 и 21. Это средство уделяет особое внимание модернизации приложений, использующих платформу Spring Boot. Процесс обновления обеспечивает контроль и обеспечивает прозрачность, отображая все журналы и выходные данные.

Запустите процесс миграции с App Assessments чтобы получить общие сведения о проблемах готовности к миграции в облако, в том числе:

  • Инструкции по настройке ресурсов Azure
  • Рекомендации по соблюдению передовых практик
  • Рекомендации по изменению кода приложения

В сценариях, когда требуются изменения кода, модернизация приложения GitHub Copilot поможет вам выполнить этап исправления. На этом этапе можно использовать предопределенные задачи для распространенных проблем, таких как:

  • Переход с проверки подлинности на основе паролей на управляемые удостоверения
  • Переход из Amazon Web Services (AWS) S3 в хранилище BLOB-объектов Azure

Дополнительные сведения о предопределенных задачах, доступных в модернизации приложений GitHub Copilot сегодня, см. в разделе "Предопределенные задачи".

Когда дело доходит до развития, предприятия часто имеют строгие процессы и элементы управления, что является местом, в котором выполняются определяемые клиентом задачи. Дополнительные сведения см. в руководстве Quickstart: создание и применение собственных задач для модернизации приложения GitHub Copilot

Определяемые клиентом задачи автоматически создаются путем анализа фиксаций кода из ранее перенесенных приложений. Эти задачи служат руководствами по исправлению аналогичных проблем в других приложениях, что позволяет Copilot применять проверенные шаблоны в нескольких базах кода. При каждой успешной миграции база знаний расширяется, ускоряя будущие исправления и уменьшая усилия вручную.

Модернизация приложения GitHub Copilot также предусматривает использование специализированных агентов для:

  • Проверка успешной сборки приложения
  • Сокращение технического долга путем обращения к CVEs
  • Проверка целостности поведения с помощью модульных тестов

Дополнительные сведения см. в разделе GitHub Copilot для модернизации служебных программ Java.

Модернизация не только о обновлении кода, а о подготовке приложений к облаку. Будь то предназначение для службы приложений Azure, приложений контейнеров Azure, службы Azure Kubernetes (AKS) или AKS Automatic, Copilot помогает вам добраться туда быстрее и с уверенностью.

См. также

Часто задаваемые вопросы о модернизации приложений GitHub Copilot.