Пакет SDK для .NET Compiler Platform

Компиляторы создают детализированную модель кода приложения по мере проверки синтаксиса и семантики этого кода. Они используют эту модель для сборки на выходе исполняемых файлов из исходного кода. Пакет SDK для .NET Compiler Platform предоставляет доступ к этой модели. Мы все шире используем возможности интегрированной среды разработки (IDE), такие как IntelliSense, рефакторинг, интеллектуальное переименование, функции "Найти все ссылки" и "Перейти к определению", чтобы повысить производительность. Мы применяем средства анализа кода, чтобы улучшить его качество, и генераторы кода, чтобы упростить разработку приложений. Эти средства становятся все более интеллектуальными, и им требуется доступ ко все большему числу моделей, которые создаются исключительно компиляторами при обработке кода приложения. Основное назначение API-интерфейсов Roslyn — открывать "черные ящики", чтобы средства и пользователи могли обмениваться данными, используя большой объем сведений о коде, доступных в компиляторе. В отличие от непрозрачной работы преобразователей исходного кода на входе в объектный код на выходе, компиляторы с использованием Roslyn выполняют функции платформ. Эти API-интерфейсы можно использовать для связанных с кодом задач в средствах и приложениях.

Основные преимущества пакета SDK для .NET Compiler Platform

Пакет SDK для .NET Compiler Platform значительно сокращает требования к созданию средств и приложений, ориентированных на код. Он предоставляет множество возможностей для инноваций в таких областях, как метапрограммирование, создание и преобразование кода, интерактивное использование языков C# и Visual Basic, а также их внедрение в доменные языки.

Пакет SDK .NET Compiler Platform позволяет создавать анализаторы и исправления кода, которые обнаруживают и исправляют ошибки написания кода. Анализаторы понимают синтаксис (структуру кода) и семантику для обнаружения методов, которые должны быть исправлены. Исправления кода предоставляют одно или несколько предлагаемых исправлений для устранения ошибок кодирования, обнаруженных анализаторами или диагностикой компилятора. Обычно анализатор и соответствующие средства исправления кода упакованы в один проект.

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

Помимо анализаторов и исправлений кода, пакет SDK .NET Compiler Platform также позволяет создавать рефакторинг кода. Пакет также предоставляет единый набор API-интерфейсов, которые позволяют проверять и анализировать базу кода C# или Visual Basic. Единая база кода упрощает создание анализаторов и средств исправления. При этом используются API-интерфейсы из пакета SDK для .NET Compiler Platform, которые позволяют проводить синтаксический и семантический анализ. Предоставьте выполнение комплексного анализа компилятору и сосредоточьтесь на более конкретных задачах. Выявляйте и устраняйте распространенные ошибки кодирования для своего проекта или библиотеки.

Дополнительным преимуществом является то, что анализаторы и средства исправления кода используют гораздо меньше памяти при загрузке в Visual Studio, чем понадобилось бы при написании собственной базы кода для анализа кода в проекте. Используя те же классы, что компилятор и Visual Studio, вы можете создавать собственные средства статического анализа. Это означает, что члены вашей команды смогут использовать анализаторы и средства исправления кода без существенного воздействия на производительность IDE.

Есть три основных сценария использования анализаторов и средств исправления кода:

  1. Применение стандартов кодирования в команде.
  2. Предоставление рекомендаций с пакетами библиотек.
  3. Предоставление общих рекомендаций

Применение стандартов кодирования в команде

У многих команд разработчиков есть стандарты кодирования, которые применяются при совместной проверке кода. Анализаторы и средства исправления кода значительно повысят эффективность этого процесса. Проверка кода происходит после того, как разработчик представит выполненную задачу на рассмотрение в команде. За весь период создания функции он не получает никаких комментариев. Разработчик может неделями приучаться к практикам разработки, которые идут вразрез со стандартами команды.

Анализаторы же начинают работу вместе с ним. Разработчик сразу же получает отзывы, которые помогают привести код в соответствие с рекомендациями. Он вырабатывает методику написания совместимого кода, как только начинает создавать прототипы. Когда функция будет готова к проверке в команде, все стандартные рекомендации будут соблюдены.

Команды могут создавать анализаторы и средства исправления кода, которые будут выявлять распространенные приемы, нарушающие командную методику написания кода. Анализаторы и средства исправления можно установить на компьютере каждого разработчика, чтобы обеспечить применение стандартов.

Совет

Прежде чем создать собственный анализатор, ознакомьтесь со встроенными анализаторами. Дополнительные сведения см. в разделе Анализ стиля кода.

Предоставление рекомендаций с пакетами библиотек

В NuGet есть широкий набор библиотек для разработчиков .NET. Некоторые из них получены из корпорации Майкрософт, некоторые — из сторонних компаний, другие же предоставлены членами сообществ и волонтерами. Такие библиотеки чаще внедряются и выше оцениваются, если разработчики успешно используют их в своих решениях.

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

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

Предоставление общих рекомендаций

Сообществом разработчиков .NET на практике были определены эффективные схемы и схемы, которых лучше избегать. Несколько членов сообщества создали анализаторы, в которых реализованы рекомендуемые схемы. Чем больше мы учимся, тем больше у нас возникает идей.

Эти анализаторы можно отправить в Visual Studio Marketplace. Затем разработчики смогут скачать их с помощью Visual Studio. Новички в работе с языком и платформой быстро освоят правильные методики и достигнут требуемого уровня производительности на самых ранних этапах работы с NET. Как только методики начинают широко использоваться, сообщество их принимает.

Следующие шаги

Пакет SDK для .NET Compiler Platform включает новейшие объектные модели языков для создания, анализа и оптимизации кода. Этот раздел содержит обзор основных преимуществ пакета SDK для .NET Compiler Platform. Дополнительные сведения можно найти в кратких руководствах, примерах и другой документации.

Дополнительные сведения об основных преимуществах пакета SDK для .NET Compiler Platform см. в следующих пяти разделах:

Чтобы приступить к работе, потребуется установить пакет SDK для .NET Compiler Platform:

Инструкции по установке — Visual Studio Installer

Найти SDK-пакет .NET Compiler Platform в Visual Studio Installer можно двумя способами:

Установка с помощью Visual Studio Installer — представление "Рабочие нагрузки"

SDK-пакет .NET Compiler Platform не выбирается автоматически в рамках рабочей нагрузки разработки расширений Visual Studio. Его необходимо выбрать как дополнительный компонент.

  1. Запустите Visual Studio Installer.
  2. Выберите Изменить.
  3. Отметьте рабочую нагрузку Разработка расширений Visual Studio.
  4. Откройте узел Разработка расширений Visual Studio в дереве сводки.
  5. Установите флажок SDK-пакет .NET Compiler Platform. Нужный пакет будет представлен последним в списке дополнительных компонентов.

Кроме того, вы можете настроить редактор DGML для отображения диаграмм в средстве визуализации:

  1. Откройте узел Отдельные компоненты в дереве сводки.
  2. Установите флажок Редактор DGML

Установка с помощью Visual Studio Installer — вкладка "Отдельные компоненты"

  1. Запустите Visual Studio Installer.
  2. Выберите Изменить.
  3. Откройте вкладку Отдельные компоненты.
  4. Установите флажок SDK-пакет .NET Compiler Platform. Нужный пакет будет представлен в разделе Компиляторы, средства сборки и среды выполнения в самом начале.

Кроме того, вы можете настроить редактор DGML для отображения диаграмм в средстве визуализации:

  1. Установите флажок Редактор DGML. Нужный пакет будет представлен в разделе Средства для работы с кодом.