Visual Studio 2026: первый взгляд: эволюция, а не революция

Я никогда до конца не понимал дорожную карту Microsoft. Мне, конечно, нравилось использовать Visual Studio 2022 (VS 2022) для разработки на C# и .NET, но когда от нее отказались для пользователей Mac (заменив ее на VS Code для Mac), я предположил, что вскоре мы все будем использовать Visual Studio Code — даже на ПК. В нынешнем виде VS Code хорош, но похоже на решение Lego, которое вам придется собрать самостоятельно. Например, нет простой кнопки «Создать» прямо из коробки.

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

В ответ на вихрь искусственного интеллекта Microsoft называет этот выпуск с более глубокой интеграцией Copilot первой интеллектуальной средой разработки (IDE).

Что я точно знаю, так это то, что Visual Studio 2026 теперь доступна через «Инсайдеры», канал бета-сборки. Раньше я пользовался программой Insiders, и эта сборка без происшествий стояла рядом с моей текущей версией. С такими важными инструментами, как Visual Studio, от которых зависят многие из нас, революции не происходит — только эволюция. В ответ на вихрь искусственного интеллекта Microsoft называет этот выпуск с более глубокой интеграцией Copilot первым Интеллектуальная среда разработки (ИДЕ). Я уловил здесь некоторую иронию; За последний год произошло множество грандиозных переименований платформ, использующих ИИ.

В этом посте я в основном буду проверять основу, давая разработчикам уверенность, что они смогут опробовать это на себе (или нет). Но я ожидаю, что он будет быстрее и будет иметь более глубокие возможности взаимодействия с ИИ с Copilot (хочу я этого или нет); плюс, я слышал, что пользовательский интерфейс стал более четким. Я также слышал, что он работает с «мертвой» Windows 10, в которой находится моя текущая среда разработки ПК, поэтому мне очень хотелось бы это проверить.

Установка предварительной сборки Visual Studio 2026

Итак, мы приступим к установке на мой компьютер с Windows 10. Будет хорошей идеей обратить внимание на немного отличающийся дизайн иконок в период с 2022 по 2026 год, чтобы не запутаться между двумя сборками. При запуске установки начинаются вопросы, но они краткие:

Стало ясно, что они будут правильно подбирать расширения, а также вещи, которые могут не поддерживаться. Я использую VS 2022 с расширениями Unity и проверил, что это версия Community:

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

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

Прежде всего, я использую темную тему, и у меня по умолчанию Copilot не будет на правой панели. Прежде чем перейти на панель проекта Unity, я спросил второго пилота: «Как мне установить темный режим?» Это дало множество ответов. В мгновение ока мы были хороши. Хотя варианта «просто сделать это» не было, сценарий предлагался. Он также предлагал скриншоты для 2026 года, так что, по крайней мере, он точно знал версию.

Взгляд на улучшения пользовательского интерфейса

Новые файлы загружались в редактор довольно быстро после выбора. Пользовательский интерфейс (UI) стал немного понятнее — сравните новую версию верхней панели…

…со старой версией ниже. Тот же макет, но в старой версии используются сплошные папки. За этим есть небольшая разница.

Проект собрался примерно за 8,5 секунд, вероятно, без помощи кеша.

Испытание функций искусственного интеллекта второго пилота

Microsoft Copilot — это презентация AI по умолчанию в VS, как и следовало ожидать. VS определенно не предназначен для кодирования Vibe, но после недавнего использования такого количества отличных агентских интерфейсов командной строки стиль помощи ChatGPT кажется немного устаревшим.

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

У меня ужасное покрытие кода (49%) в загруженном проекте, поэтому я был рад позволить Copilot создать дополнительные тесты и посмотреть, сможет ли это повысить покрытие. Я выберу одну область класса, в которую недавно добавил больше функций:

(Для тех, кто не может догадаться, что означают столбцы в отчетах о покрытии: 138 строк кода покрыты, а 232 строки не покрыты, что дает нам 37% покрытия. Поэтому, хотя я не верю в то, чтобы оставлять тесты исключительно на усмотрение LLM, мы можем позволить ему вносить предложения. У меня также есть Mock framework.

Как говорится, используется GPT-5 mini. Я мог бы сменить имя на Клода Хайку. После запуска он создал дополнительное тестовое приспособление:

Мне приходится самому устанавливать новые тесты, что после использования агентских инструментов, которые делают это за меня, немного разочаровывает. Используемый стиль аналогичен моему, с использованием Mocks при необходимости. В этом примере единственная странность — это длинное имя метода:

[Test] общественный недействительный FetchRoadPoint_ReturnsAssociatedRoadPoint () {вар locMock = новый Mock (); вар locObj = locMock.Object; var mp = новый MapPosition(новый System.Numerics.Vector2(0, 0), MapPosition.LocTypeCue.None); mp.trackId = 1; RoadPoint rp = ss.RegisterRoadPoint(mp, 0, 0); ss.RegisterAssociation(rp, locObj); RoadPoint найден = ss.FetchRoadPoint(locObj); Assert.AreEqual(rp, найдено); } 12345678910

[Test] общественный недействительный FetchRoadPoint_ReturnsAssociatedRoadPoint () {вар locMock = новый Mock (); вар locObj = locMock.Object; var mp = новый MapPosition(новый System.Numerics.Vector2(0, 0), MapPosition.LocTypeCue.None); mp.trackId = 1; RoadPoint rp = ss.RegisterRoadPoint(mp, 0, 0); ss.RegisterAssociation(rp, locObj); RoadPoint найден = ss.FetchRoadPoint(locObj); Assert.AreEqual(rp, найдено); }

Код компилируется, поэтому я запускаю тесты через Unity (что и является целью).

Все тесты в новом приспособлении выполняются:

К сожалению, серьезного влияния на покрытие кода они не оказывают:

Таким образом, он покрыл только дополнительные три строки! Я полностью признаю, что, поскольку я запускаю тесты из Unity, даже задача запуска агента не может легко улучшить это через Visual Studio. Вероятно, было решено охватить методы, которые указывают непосредственно на другие структуры, которые не помогают охватить вызывающий класс.

Возможно, более качественный анализ задачи (отчеты о покрытии были доступны) помог бы, но мы знаем, что есть и другие приложения, которые специализируются на создании тестов. Просто создав шаблоны кода, я могу добавлять свои собственные тесты; и на самом деле я нашел бы это более полезным.

Заключение: эволюционный шаг вперед

В Visual Studio есть гораздо больше возможностей, чем я здесь рассмотрел, например, профилирование с помощью Copilot. Я вижу, что мои расширения для Unity были полностью приняты во внимание, и мой существующий проект был построен сразу же без каких-либо проблем. Вероятно, нет причин не попробовать это, если вы используете Visual Studio 2022 — но ожидайте эволюции, а не революции.

ТЕНДЕНЦИОННЫЕ ИСТОРИИ YOUTUBE.COM/THENEWSTACK Технологии развиваются быстро, не пропустите ни одной серии. Подпишитесь на наш канал YouTube, чтобы смотреть все наши подкасты, интервью, демонстрации и многое другое. ПОДПИСАТЬСЯ Группа, созданная в Sketch. Дэвид работал профессиональным разработчиком программного обеспечения в Лондоне в компаниях Oracle Corp. и British Telecom, а также консультантом, помогающим командам работать более гибко. Он написал книгу о дизайне пользовательского интерфейса и с тех пор пишет технические статьи. Подробнее Дэвид Истман

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *