Intellicode visual studio что это

Обновлено: 06.07.2024

На Build 2018 Microsoft анонсировали Visual Studio IntelliCode: набор AI-инструментов, которые способствуют более качественной разработке. В сотрудничестве с командой IntelliCode Microsoft рады сообщить, что теперь IntelliCode доступен пользователям TypeScript/JavaScript через расширение IntelliCode для VS Code.

IntelliCode дополняет IntelliSense, рекомендуя часто используемые элементы завершения для текущего контекста в верхней части списка. Эти контекстуальные рекомендации основаны на общих методах, полученных в ходе обучения IntelliCode тысячами реальных проектов. Это экономит ваше время, помещая то, что вы, скорее всего, будете использовать, вверху списка: вам не придется искать в алфавитном порядке.

Установите расширение Visual Studio IntelliCode через магазинили установите его на вкладке «Расширения» в Visual Studio Code. Затем просто откройте файл TypeScript или JavaScript и начните редактирование. Вы начнете видеть рекомендации IntelliCode помеченными и поднятыми в начало вашего списка завершений.


IntelliCode изменит свои рекомендации в зависимости от контекста и отсортирует варианты по релевантности в данной конкретной ситуации. Например, если элемент, такой как map, используется в условном выражении или цикле, вы увидите методы, которые вы, скорее всего, использовали бы для создания условия. Если вы проверите завершения для map уже внутри условного выражения, вы увидите другой список предложений.

IntelliCode также поможет вам в различных библиотеках JavaScript, независимо от того, пишете ли вы код на стороне клиента с помощью таких библиотек, как React, Angular или Vue, или выполняете разработку на стороне сервера с помощью Node.js и Express.


IntelliCode пока находится в preview. Если вдруг вы найдете ошибку в расширении, мы будем очень рады, если вы расскажете нам о ней на GitHub.


Ввод стандартов оформления кода и форматирования в базу


Если код согласован, то его удобнее обслуживать и читать. Недавнее исследование Microsoft Research в этой области показало, что 18 процентов комментариев с просьбами о помощи с проблемами кода были связаны с ошибками стандартов оформления.

Обновленное расширение IntelliCode позволяет по требованию генерировать файл .editorconfig, идеально соответствующий стандартам оформления, используемым в вашем коде. Больше не надо решать всем коллективом, каким стандартам следовать!

Создав этот файл один раз, вы сможете с его помощью поддерживать единообразие базы исходного кода для всех членов группы. Также можно быстро и просто устранять проблемы с форматированием, используя меню быстрых действий Quick Ctrl (Ctrl+ или Alt+Enter) или новую настраиваемую функцию Format Document (Ctrl+K, D) в Visual Studio 2017 версии 15.8 Preview 3 и выше.

Как использовать .editorconfig


Нарушения стиля по умолчанию имеют важность уровня «Message». Это показывает суффикс «suggestion» в каждой строке правила в файле .editorconfig. Вы можете настроить файл, если требуется другой уровень исполнения, например, «Warning» или «Error». Обратите внимание, что нарушения формата не отображаются в списке ошибок, но их можно легко устранить (см. наше руководство ниже).

Вы можете начать генерацию EditorConfig через обозреватель решений. Просто нажмите правой кнопкой мыши на папку с решением, проектом или подпапкой, к которой вы хотите применить стандарт, нажмите add («добавить»), а затем EditorConfig file (IntelliCode) (Файл EditorConfig (IntelliCode)). В случае с проектом вы также можете нажать add («добавить»), затем new item («новый элемент») и EditorConfig file (IntelliCode) (Файл EditorConfig (IntelliCode)).

Обратите внимание, что файлы EditorConfig применяются принудительно в иерархическом порядке ко всем файлам под ними. Например, если вам нужно применить набор стандартов ко всему решению, поместите .editorconfig в каталог решения. Если у вас есть подпапки или проекты с разными стандартами, создайте новый файл EditorConfig для этих подпапок/проектов, чтобы перезаписать стандарты более высокого уровня.

Существует несколько способов очистки кода для соответствия новым стандартам в зависимости от ваших целей.

    Использование меню быстрых действий Lightbulb (Ctrl+ или Alt+Enter)

И еще отметьте для себя, что настройки по умолчанию не исправляют некоторые стандарты стиля. Вы можете добавить их с помощью настроек инструментов (например, настройка «Применить скрытые/показываемые типы» запустит правила стиля, связанные с использованием переменных в коде).

Что нужно знать при работе с EditorConfig

Есть несколько известных проблем, которые следует учитывать при работе с EditorConfig:

    Необходимо закрывать и снова открывать файлы, чтобы отобразились примененные изменения стандартов в версии 15.8 Preview 2 и более ранних.

Внесите свой вклад

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

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


IntelliCode помещает наиболее полезные методы в начало списка завершения, тем самым экономя ваше время. Рекомендации IntelliCode основаны на тысячах проектов с открытым исходным кодом с сайта GitHub, каждый из них получил оценку более 100 звезд. Список завершения перестраивается с учетом контекста вашего кода — типичные методы перемещаются в начало.

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

Завершения команд

IntelliCode может предоставлять рекомендации по коду и отправлять их участникам вашей команды. В этой предварительной версии функции вы можете построить командную модель, чтобы давать рекомендации по коду, которого нет в открытом доступе, например методов из ваших собственных служебных классов или вызовов библиотек для конкретных доменов. Интегрируйте собственные задачи сборки в конвейер, чтобы завершение кода для команды выполнялось в соответствии с последними изменениями в репозитории.

Дополнение аргументов

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

Определение правил стилистического оформления и форматирования кода

Visual Studio IntelliCode динамически создает файл .editorconfig на основе вашей базы кода для определения стилей и форматов кодирования.

IntelliSense с элементами ИИ — C++


IntelliCode помещает наиболее полезные методы в начало списка завершения, тем самым экономя ваше время. Рекомендации IntelliCode основаны на тысячах проектов с открытым исходным кодом с сайта GitHub, каждый из них получил оценку более 100 звезд. Список завершения перестраивается с учетом контекста вашего кода — типичные методы перемещаются в начало.

При написании кода на C++ функция IntelliCode поможет вам использовать популярные библиотеки, например STL. Контекст вашего кода используется для перемещения наиболее полезных рекомендаций в начало списка. Например, при использовании переменной std::string в цикле while метод substr оказывается в начале.

Завершение кода для команды разработчиков (предварительная версия — C++)

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

IntelliSense с элементами ИИ — Java


IntelliCode помещает наиболее полезные методы в начало списка завершения, тем самым экономя ваше время. Рекомендации IntelliCode основаны на тысячах проектов с открытым исходным кодом с сайта GitHub, каждый из них получил оценку более 100 звезд. Список завершения перестраивается с учетом контекста вашего кода — типичные методы перемещаются в начало.

IntelliCode отлично работает с популярными платформами и библиотеками Java, например Java SE и Spring. Эта функция полезна для создания как монолитных веб-служб, так и современных микрослужб.

Эта функция доступна в виде расширения для Visual Studio Code (выпуск 1.29 от октября 2018 г.)

IntelliSense с элементами ИИ — Python


IntelliCode помещает наиболее полезные методы в начало списка завершения, тем самым экономя ваше время. Рекомендации IntelliCode основаны на тысячах проектов с открытым исходным кодом с сайта GitHub, каждый из них получил оценку более 100 звезд. Список завершения перестраивается с учетом контекста вашего кода — типичные методы перемещаются в начало.

IntelliCode повысит продуктивность вашей работы благодаря широкому ассортименту пакетов Python как при написании простых скриптов с помощью модулей os или sys, так и при создании веб-сайтов на Django или Flask либо работе с модулями обработки и анализа данных, например numpy и tensorflow.

Эта функция доступна в виде расширения для Visual Studio Code (выпуск 1.29 от октября 2018 г.)

IntelliSense с элементами ИИ — SQL Server


IntelliCode помещает наиболее полезные методы в начало списка завершения, тем самым экономя ваше время. Рекомендации IntelliCode основаны на тысячах проектов с открытым исходным кодом с сайта GitHub, каждый из них получил оценку более 100 звезд. Список завершения перестраивается с учетом контекста вашего кода — типичные методы перемещаются в начало.

IntelliCode хорошо работает с запросами T-SQL, предлагая подходящие варианты в зависимости от построения запроса и помещая такие предложения в верхнюю часть списка IntelliSense при вводе запроса.

Эта функция также работает с SQL Server после установки расширения mssql (1.7.0) для Visual Studio Code.


IntelliCode помещает наиболее полезные методы в начало списка завершения, тем самым экономя ваше время. Рекомендации IntelliCode основаны на тысячах проектов с открытым исходным кодом с сайта GitHub, каждый из них получил оценку более 100 звезд. Список завершения перестраивается с учетом контекста вашего кода — типичные методы перемещаются в начало.

IntelliSense с элементами ИИ — XAML


IntelliCode помещает наиболее полезные методы в начало списка завершения, тем самым экономя ваше время. Рекомендации IntelliCode основаны на тысячах проектов с открытым исходным кодом с сайта GitHub, каждый из них получил оценку более 100 звезд. Список завершения перестраивается с учетом контекста вашего кода — типичные методы перемещаются в начало.

Рекомендации по элементам управления и свойствам

При написании кода XAML функция IntelliCode рекомендует элемент управления, чаще всего используемый в этом контексте. Кроме того, в контексте элемента управления она рекомендует чаще всего используемые свойства в том же порядке, в котором они обычно используются.

VSCode

Идея написать эту статью родилась у меня много месяцев назад, но всегда что-то мешало воплотить ее в жизнь: то реального кода в ней нет, то теорию лень писать. Но теперь, когда она уже готова, можно со стопроцентной уверенностью сказать, что более полезной статьи вы еще не читали!

VS Code — мой любимый текстовый редактор, а учитывая, что у него обширное сообщество и многообразие доступных плагинов, то цены ему просто нет.


Вы готовы? Здесь и сейчас я расскажу вам о расширениях VS Code, которые не только помогут улучшить продуктивность, но и придадут соблазнительный вид вашему коду. ( ͡° ͜ʖ ͡°)

Статья состоит из 2 частей:

  1. Расширения для улучшения продуктивности.
  2. Расширения для улучшения стиля.

Искренне надеюсь, что материал статьи вам понравится. И раз уж мы заговорили о стиле, не могу не показать, как выглядит мой VS Code:


Кстати, пусть вас не смущает мой терминал, ведь я пользователь Windows ヽ(◕ヮ◕)ノ

Сколько времени уже работаю с кодом в этом текстовом редакторе, но каждый раз восхищаюсь им все больше! (͠≖ ͜ʖ͠≖) Но довольно отступлений — к делу!

Расширения VS Code для улучшения продуктивности

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

1. WakaTime

Это одно из моих любимых расширений, а будь оно бесплатным, стало бы самым любимым.

Что же оно делает?

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

Превосходно, не так ли?

Данный тайм-трекер предоставляет отличный отчет о всех ваших действиях с кодом, и выглядит он так:


2. Visual Studio IntelliCode

Представьте себе Intellisense при поддержке ИИ, который бы подсказывал, что писать в коде. Похоже, что ваши мечты начинают сбываться!

Расширение Visual Studio IntelliCode обеспечивает возможности разработки с помощью ИИ для программистов Python, TypeScript/JavaScript и Java в Visual Studio на основе аналитической обработки контекста кода в сочетании с машинным обучением.

Посмотрим, как это работает:

3. Terminal Here

Для тех программистов, кто не прочь посоревноваться, не использует IDE и предпочитает писать код в текстовом редакторе, я приготовил кое-что интересное!

Что касается меня, то я предпочитаю текстовый редактор VS Code. В основном пишу код на Java и люблю поддерживать правильную файловую структуру (каждому вопросу — свой каталог). Как вы уже догадались, чтобы запустить в терминале простую команду для выполнения файлов Java, мне приходится каждый раз менять директории и располагать свой код. Вот почему этот плагин стал для меня спасением!

Terminal Here открывает текущую рабочую директорию в терминале VS Code.

Одно нажатие клавиши, и у вас уже открыт терминал с текущей рабочей директорией!

4. Live Server

Вы представить себе не можете, насколько важен этот плагин!

Открывайте страницы, используя Live Server, и у вас не будет хлопот с обновлением каждый раз, когда вы вносите какие-либо изменения. Кто же не любит горячей перезагрузки?

5. ReactJS Code Snippets

Если вы React разработчик и до сих пор не используете ReactJS Code Snippets, то вам явно не жаль своего времени! При помощи этого плагина можно хорошо его сэкономить и создавать компоненты, используя уже готовые сниппеты кода. ヽ(͡◕ ͜ʖ ͡◕)ノ

Еще один пример:

6. Python

Я и не надеюсь перечислить все возможности Python в формате статьи, но точно могу вас заверить, что это расширение позаботится обо всех ваших потребностях в этом языке! Вы можете:

  • выбирать интерпретатор Python нажатием на строку состояния;
  • настраивать отладчик с помощью панели Debug Activity;
  • настраивать тесты с помощью команды Configure Tests ;

7. Path Intellisense

Этот плагин — по-настоящему нужный инструмент для разработчика. Импортируем ли мы зависимости, включаем образы в HTML-документы, прикрепляем скрипты JS, делаем ссылки на документы CSS в HTML-файлах — во всех этих случаях нам не обойтись без указания пути к файлу.

Path Intellisense автоматически заполнит для вас путь, чтобы вы смогли сконцентрироваться на более важных делах. ( ͡^ ͜ʖ ͡^)

8. NPM Intellisense

Если вы по достоинству оценили предыдущий плагин, и к тому же вы разработчик Node, то это расширение также не оставит вас равнодушным. Кто же откажется от автозавершения или подсказок в процессе импорта библиотек npm?

9. Markdownlint

Откройте наугад несколько проектов с открытым ПО на GitHub, и вы заметите у них одну общую черту — плохое стилевое оформление README.md. ( ͡ಠ ʖ̯ ͡ಠ)

Язык разметки Markdown спроектирован так, чтобы его было легко читать, писать и понимать. И это действительно так, но при этом его гибкость является одновременно достоинством и недостатком. Возможность работы со многими стилями грозит обернуться несогласованным форматированием. Некоторые конструкции плохо работают в парсерах, поэтому их лучше избегать.

Markdownlint — расширение Visual Studio Code, которое содержит библиотеку правил для соблюдения стандартов и согласованности файлов Markdown.

Советую, как можно быстрее установить его и настроить ваш Markdown 🙂

10. Markdown Preview Enhanced

Если мы с вами на одной волне, то вы, как и я, давно отказались от Microsoft Word и других ПО для создания текстовых документов. Для этой цели у нас есть Markdown. Установите данный плагин и увидите, как изменится ваш Markdown.


11. Auto Close Tag

Если вы веб-разработчик, и при этом не пользуетесь Auto Close Tag для написания тегов, то как вы вообще справляетесь? Лично мне надоедает закрывать теги вручную, и, к счастью, плагин автоматически делает всё это за меня.

12. Auto Rename Tag

Еще одно расширение в этом разделе — Auto Rename Tag, которое автоматически переименовывает закрывающиеся теги, если вам это необходимо. ( ͡

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

Расширения VS Code для улучшения стиля

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

1.Prettier — инструмент для форматирования кода

Сначала я хотел внести Prettier в список расширений для продуктивности, но так как он связан со стилем, расскажу о нем здесь.

До сих пор существует противостояние, известное как “табуляция против пробелов” (и я вообще не понимаю тех, кто использует 8 пробелов), и вам, возможно, приходится преобразовывать одно в другое, но данное расширение возьмет на себя задачу добавления/удаления пробелов в коде.

Или представим другую ситуацию: у вас есть фрагмент кода, который написал ваш друг, или вы просто взяли его из интернета. Что вы будете делать, если он не структурирован? Будете выстраивать вручную? Конечно же нет, для этого и существует плагин.

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

2. Rainbow Brackets

Не такое уж полезное расширение (к сожалению), но ведь скобки разных цветов выглядят бесподобно. ( ͡° ͜ʖ ͡°)

В вашем распоряжении все цвета радуги для круглых, квадратных и фигурных скобок. Rainbow Brackets может пригодится программистам Lisp, Clojure, JavaScript и многим другим.

3. Snazzy Operator

Вот он мой любимчик, хотя вы можете подумать, что это одна из тем VS Code.


Snazzy Operator требует предварительной установки шрифта Operator Mono.

4. vscode-styled-components

И наконец, последний в списке — vscode-styled-components, удивительный плагин для выделения синтаксиса и автозавершения.


Между прочим, вы заметили одну деталь в первом скриншоте статьи? Если нет, то повторю его еще раз:


Неужели не заметили? Тогда даю подсказку — посмотрите на терминал:


Если вы из числа пользователей Linux или Mac, то для вас это не ново, но для всех моих друзей, работающих в Windows, это стало открытием, не так ли?

Главным образом я использую тему “agnoster” фреймворка Oh-My-Zsh на WSL. Более подробную информацию о них вы можете найти в Google.

Читайте также: