Visual studio 15: Visual Studio 2015 с обновлением 1

Содержание

Visual Studio 2015 с обновлением 1


  • Статья

  • Чтение занимает 11 мин


Условия лицензионного соглашения
| Блог
| Visual Studio Сообщество разработчиков

Примечание

Этот выпуск — не последняя версия Visual Studio. Вы можете скачать последний выпуск на странице заметок о текущем выпуске для Visual Studio 2019.


выпуски Visual Studio 2015 г.

Заметки о выпуске можно просмотреть для всех версий Visual Studio 2015:

  • 27 июня 2016 г. — Visual Studio 2015 с обновлением 3
  • 30 марта 2016 г. — Visual Studio 2015 с обновлением 2
  • 30 ноября 2015 г. — Visual Studio 2015 с обновлением 1
  • 20 июля 2015 г. — Visual Studio 2015 г.
Скачивание Visual Studio 2015

Вы можете скачать Visual Studio 2015 по ссылке My.VisualStudio.com. My.VisualStudio.com требуется бесплатная подписка Dev Essentials или подписка Visual Studio.


Visual Studio 2015 с обновлением 1

Дата выпуска: 30 ноября 2015 г.

Сводка новых средств в этом выпуске

  • Инструменты Visual Studio для Apache Cordova
  • Инструменты Visual Studio для универсальных приложений Windows
  • Visual C#
  • Visual C++
  • Отладка и диагностика
  • .NET Framework 4.6.1
  • ASP.NET
  • TypeScript
  • Прочее
К другим изменениям относятся следующие.
  • Известные проблемы исправлений & ошибок
  • ASP.NET 5 RC1
  • Пакет Azure SDK 2.8 для .NET
  • бета-версия Visual Studio Code
  • отладчик GDB Visual Studio
  • СредстваNode.js для Visual Studio
  • NuGet 3. 3

Сведения о новых возможностях этого выпуска

Средства для Apache Cordova

Разработчики, использующие инструменты для Apache Cordova впервые с момента выпуска Visual Studio 2015 года, будут находить более богатую платформу разработки с поддержкой iOS 9, основу для Android 6 Marshmallow, новый подключаемый модуль для проверки подлинности Azure AD и десятки… Даже сотни исправлений ошибок для улучшения работы разработчика.

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

Средства для универсальных приложений для Windows

Средства для универсальных приложений Windows (версия 1.2) можно использовать для создания и отправки приложений в Магазин Windows, нацеливаясь на пакет SDK версии 1511 Windows 10. Кроме того, в этом выпуске добавлено несколько улучшений производительности разработчика для . NET Native, конструктора XAML, конструктора манифестов, упаковки Windows Store и отладчика.

Если у вас еще нет средств для универсальных приложений Windows, их можно включить, изменив установку Visual Studio 2015 или напрямую установив их по этой ссылке.

Visual C #

Интерактивное окно C# возвращается в Visual Studio, а также окно REPL командной строки C#. (Интерактивное окно — это окно REPL в Visual Studio.)

Мы также выпустили API-интерфейсы сценариев , позволяющие создавать и запускать C# в качестве скрипта. API-интерфейсы сценариев доступны в GitHub.

Кроме того, мы выпустили csi.exe. Это средство, которое можно использовать для запуска файла скрипта C# (CSX) из командной строки разработчика. Например, просто введите csi myScript.csx для запуска файла скрипта. Кроме того, можно ввести режим REPL командной строки для интерактивной оценки фрагментов кода C#. Чтобы добраться до этого режима, выполните команду csi без аргументов из командной строки разработчика.

Отладка и диагностика

Visual C++

В этом выпуске мы добавили поддержку «Изменить и продолжить» для /BigObj, что означает, что теперь вы можете изменить и продолжить редактирование кода при отладке проектов Windows Store C++.

IDE

Функция, которую мы все ждали, наконец, здесь! Теперь можно щелкнуть правой кнопкой мыши определение интерфейса или абстрактного метода и перейти к его реализации с помощью ярлыка «Перейти к реализации «.

Мы также добавили новый рефакторинг, который позволяет преобразовывать методы в свойства с помощью команды быстрого действия CTRL+.

Кроме того, мы исправили ошибки форматирования, ненужное приведение, интеграция WinForms, аварийное завершение поиска класса в Обозреватель решений и переход к def/MAS с помощью функции «Использовать вкладки». И теперь мы сделали регионы автоматически крахом при первом открытии.

Анализ кода

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

  • Просмотр предупреждений и сообщений анализа только для изменений в коде.
  • «Базовые» все текущие проблемы и «оставайтесь чистыми» двигаться вперед.
  • Просматривайте базовые показатели и управляйте ими для аудита подавлений или устранения существующего технического долга.
  • Удалите повторяющиеся экземпляры предупреждений в списке ошибок, чтобы сосредоточить результаты на уникальном наборе.

Окно «Средства диагностики»

Мы внесли несколько улучшений на вкладку «События» окна «Средства диагностики», чтобы помочь вам прочитать и понять список событий еще быстрее и эффективнее, чем раньше.

Новые возможности:

  1. Улучшенное меню фильтрации , которое можно настроить следующими способами:
    По категориям, по потокам или с помощью just My Code.
  2. Новый элемент управления поиска, позволяющий выполнять поиск по всем видимым столбцам таблицы «События».
  3. Префиксы категорий**, которые мы добавили ко всем событиям, что упрощает их чтение.

Примечание

Эти улучшения окна средств диагностики доступны во всех выпусках Visual Studio. Однако на следующем снимке экрана появляется Visual Studio Enterprise с intelliTrace и предоставляется доступ к более категориям событий, чем к другим выпускам.

Профилирование использования ЦП во время отладки

Теперь во время отладки можно получить подробный профиль использования ЦП для каждой функции. Вы можете включать и отключать профилирование ЦП во время отладки и просматривать результаты, когда вы находитесь в состоянии приостановки работы, что позволяет просматривать разбивку использования ЦП на каждую функцию кода, выполняемого между точками останова и во время шагов. (Чтобы использовать эту функцию, откройте окно «Средства диагностики» (отладка —> средства диагностики), перейдите на вкладку ЦП и нажмите кнопку «Профилирование ЦП».

платформа .NET Framework 4.6.1

Visual Studio 2015 с обновлением 1 теперь включает последнюю версию (4.6.1) платформа .NET Framework. В платформа .NET Framework 4.6.1 включены все функции и улучшения .NET 4.6, а также многочисленные исправления надежности, стабильности, безопасности и производительности. Ниже приведены некоторые из основных функций версии 4.6.1.

  • улучшения Windows Presentation Foundation (WPF) для проверки орфографии, поддержки пользовательских словарей для отдельных пользователей и повышения производительности сенсорного ввода
  • Криптография: улучшенная поддержка алгоритма цифровых подписей эллиптических кривых (ECDSA) X509.
  • ADO.NET. Добавлена поддержка подключения SQL для AlwaysOn и Always Encrypted
  • Windows Workflow Foundation: API System.Transactions теперь поддерживают распределенные транзакции с координатором, отличным от MSDTC
  • Усовершенствования профилирования , связанные с интерфейсом IcorProfilerInfo
  • NGen: введение NGen PDB
  • Добавлена поддержка API HttpListener, позволяющая серверным приложениям использовать привязку маркеров.
  • Многие другие исправления производительности, стабильности и надежности в RyuJIT, GC, WPF и WCF.

Дополнительные сведения о платформа .NET Framework 4.6.1 см. в следующих статьях:

  • блог платформа .NET Framework 4.6.1
  • Новые возможности платформа .NET Framework: платформа .NET Framework 4.6.1
  • платформа .NET Framework 4.6.1. Список изменений в выпуске
  • Совместимость приложений в .NET Framework 4.6.1
  • Различия интерфейсов API .NET Framework (на GitHub)

ASP.NET

ASP.NET 5 бета-версия 8

Примечание

Хотя Visual Studio 2015 с обновлением 1 включает ASP.NET 5 бета-версии 8, мы настоятельно рекомендуем попробовать недавно выпущенный ASP.NET 5 RC1, который теперь доступен для скачивания.

ASP.NET 5 бета-версия 8 имеет следующие функции и обновления:

  • Наблюдатель DNX позволяет разработчикам, использующим командную строку, работать с тем же интерфейсом редактирования и обновления браузера, что Visual Studio разработчики наслаждались ASP.NET 5 приложениями. Наблюдатель DNX будет просматривать файлы в проекте и отображать ошибки компиляции при наличии. И как только код сможет скомпилироваться снова, он запустит его и вы сможете перейти к приложению.
  • Локализация. Разработчики приложений теперь могут разрабатывать веб-приложения, которые могут быть переведены и использоваться различными языками и региональными параметрами. ПО промежуточного слоя поддерживает настройку языка и региональных параметров, чтобы они были доступны через Thread.CurrentCulture, и API были предоставлены для чтения строк из файлов ресурсов, которые можно выбрать на основе текущего языка и региональных параметров.

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

Поэтому вместо того, чтобы код был примерно таким:

var myMessage = resources. MyMessageString;

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

var myMessage = stringLocalizer[«Спасибо за использование наших продуктов»];

Typescript

Visual Studio 2015 с обновлением 1 включает функции из выпусков средств TypeScript версии 1. 6 и 1.7. Он обеспечивает значительные улучшения в системе типов TypeScript и обеспечивает поддержку полиморфного типа, типов пересечений, объявлений локальных типов, псевдонимов универсальных типов и определяемых пользователем функций защиты типов.

Он также завершает поддержку ES6 в TypeScript путем добавления генераторов ES6 и выражений классов ES6 и обеспечивает поддержку новых предложений функций ES7, таких как оператор экспонентации ES7 и асинхронные функции ES7.

Кроме того, JSX React теперь изначально поддерживается компилятором и инструментами TypeScript. В этом выпуске также поддерживаются собственные реализации ES6 функций ES6 (-target ES6) при использовании системы собственных модулей Node (-module commonjs), помимо расширенной поддержки разрешения пути к модулю узла.

Разное

Параллельное выполнение теста

Платформа тестирования Visual Studio предоставляет поддержку параллельного выполнения тестовых случаев.

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

Параллельное выполнение тестов включено с помощью параметра MaxCpuCount в глобальном разделе файла RUNSETTINGS (как показано на следующем снимке экрана).

Значение MaxCpuCount имеет следующую семантику:

  • ‘n’ (где 1 <= n <= число ядер) : будет запущено до «n» процессов.
  • «n» любого другого значения: число запущенных процессов будет равно количеству доступных ядер на компьютере.

Параллельное выполнение поддерживается во всех точках запуска — CI, командной строке (CLI) и интегрированной среде разработки (обозреватель тестов, CodeLens, различные команды run и т. д.), а индикаторы обозревателя тестов отслеживают ход выполнения тестов параллельно.

ASP.NET 5. Поддержка MSTest и Поддержка CodeCoverage

Платформа тестирования Visual Studio предоставляет поддержку тестов на основе платформы MSTest для приложений ASP. NET 5.

Компоненты платформы MSTest доступны в коллекции NuGet.

Платформа тестирования Visual Studio предоставляет поддержку CodeCoverage для приложений ASP.NET 5 на платформах x86/x64, предназначенных для CoreCLR/CLR.

Поддержка subversion для сборки

Теперь можно создавать из репозиториев системы управления версиями на основе subversion, что позволяет командам централизованно выполнять все сборки и управление рабочими элементами в TFS без необходимости сразу перемещать исходный код.

Центр запросов на вытягивание в Visual Studio

Team Explorer теперь включает новый центр запросов на вытягивание, в котором пользователи могут просматривать список созданных запросов на вытягивание, а также запросы на вытягивание, назначенные другим пользователям.

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

Политика рабочего элемента «Запрос на вытягивание требуется»

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

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

Другие изменения: исправление известных & проблем

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

Подробнее: Описание Visual Studio 2015 с обновлением 1

ASP.NET 5 RC1

ASP.NET 5 RC1 включает следующие функции и обновления:

  • Панель элементов начальной загрузки
  • Боуер диспетчер пакетов
  • Редактор JSX
  • Улучшенная раскраска атрибутов ANGULAR JS HTML
  • Улучшенные вспомогательные функции Razor IntelliSense и тегов
  • Может открывать проекты MVC 4
  • IntelliSense пакета NPM (аналогично тому, как работает Bower. json)
  • Очистка ASP.NET Обозреватель решений

Дополнительные сведения о ASP.NET RC1 см. в записи блога «Объявление ASP.NET 5 релиз кандидат 1». Дополнительные сведения о .NET Core и ASP.NET см. в записи блога «Объявление о .NET Core и ASP.NET 5 RC».

Пакет Azure SDK 2.8 для .NET

Мы выпустили пакет Azure SDK 2.8 для Visual Studio 2013 и Visual Studio 2015, который включает следующие функции и обновления:

  • Azure Resource Manager
  • «Отправка данных Диагностика Azure» в Аналитика приложений
  • Новая поддержка Docker
  • Обновления шаблона мобильных приложений
  • предварительная версия Обозреватель службы хранилища Microsoft Azure
  • Средства azure Service Fabric
  • Средства Azure HDInsight для Visual Studio
  • Средства Фабрика данных Azure

Дополнительные сведения об этом выпуске и новых функциях и обновлениях см. в записи блога » Объявление о выпуске пакета AZURE SDK 2.8 для .NET».

бета-версия Visual Studio Code

У нас есть несколько интересных объявлений, чтобы поделиться с вами о бета-версии для Visual Studio Code, включая следующие функции и обновления:

  • Поддержка расширения [подключаемый модуль] в VS Code
  • Расширение Marketplace или коллекция
  • Расширения «Готово к работе сейчас»
  • VS Code с открытым исходным кодом

отладчик GDB Visual Studio

Мы рады представить новое расширение, которое позволяет отладчику Visual Studio взаимодействовать с GDB. Это особенно полезно для отладки удаленных целевых объектов Linux. Например, можно использовать Visual Studio отладчик GDB в следующих сценариях:

  • Отладка локальной базы данных GDB
  • Отладка GDB на виртуальной машине Linux Azure
  • Отладка GDB на устройстве Raspberry Pi с Центр Интернета вещей Azure

Примечание

Чтобы использовать это расширение, необходимо установить как Visual Studio 2015 Community, так и средства Visual C++ для Android или iOS.

Дополнительные сведения см. в записи блога » Объявление о расширении отладчика VS GDB».

Средства Node.js для Visual Studio

Бесплатное и открытое расширение с открытым кодом, которое превращает Visual Studio в мощную среду разработки Node.js, Node.js Tools for Visual Studio включает множество улучшений в последнем выпуске, например:

  • Поддержка Node.js версии 4.x
  • Поддержка npm версии 3.x, которая помогает обойти потенциальные проблемы MAX_PATH
  • Более быстрый и несрочный IntelliSense, включая улучшенные значения по умолчанию для символов фиксации, и возможность согласиться на предварительный выпуск предстоящего обработчика IntelliSense ES6
  • Улучшенная стабильность во время отладки и более быстрое время загрузки проекта
  • Поддержка фрагмента кода

Дополнительные сведения см. в записи блога » Node.js Tools 1.1 for Visual Studio Released».

NuGet

NuGet 3.3

Пакетная версия расширения NuGet — 3.3. Дополнительные сведения обо всех обновлениях см. в заметках о выпуске NuGet 3.3.

Диспетчер пакетов NuGet

На основе отзывов пользователей мы внесли несколько изменений в пользовательский интерфейс NuGet диспетчер пакетов, чтобы обеспечить следующие преимущества:

  • Кнопки действий , которые отображаются непосредственно в списке пакетов, что обеспечивает более быстрый доступ к общим функциям управления.
  • Пользовательский интерфейс, разделенный на ряд вкладок, которые являются конкретными фильтрами пакетов, с которыми можно работать в проектах.
  • Вкладка «Консолидация«, используемая при работе с пакетами на уровне решения. На нем также будет показан индикатор, указывающий, сколько пакетов является кандидатом, которые можно обновить в проектах.
  • Вкладка «Обновить » для пакетов с несколькими выборами. Вы можете не только одновременно обновлять все выбранные пакеты, но и использовать эту функцию для выбора всех пакетов и выполнения действия «Обновить все» внутри проекта или решения. (Как и на вкладке «Консолидация», также отображается значок, указывающий, сколько пакетов является кандидатами, которые можно обновить в проектах.)
Улучшена поддержка локальных папок в NuGet

Средства NuGet теперь поддерживают значительно более быстрый доступ к специально созданному локальному хранилищу папок. Чтобы узнать, как настроить этот репозиторий, подробные инструкции см. в заметках о выпуске NuGet 3.3.

Заметки о выпуске Visual Studio 2015 с обновлением 3


  • Статья

  • Чтение занимает 11 мин

Условия лицензионного соглашения
| Блог
| Visual Studio Сообщество разработчиков

Примечание

Этот выпуск — не последняя версия Visual Studio. Вы можете скачать последний выпуск на странице заметок о текущем выпуске для Visual Studio 2019.


выпуски Visual Studio 2015 г.

Заметки о выпуске можно просмотреть для всех версий Visual Studio 2015:

  • 27 июня 2016 г. — Visual Studio 2015 с обновлением 3
  • 30 марта 2016 г. — Visual Studio 2015 с обновлением 2
  • 30 ноября 2015 г. — Visual Studio 2015 с обновлением 1
  • 20 июля 2015 г. — Visual Studio 2015 г.
Скачивание Visual Studio 2015

Вы можете скачать Visual Studio 2015 по ссылке My.VisualStudio.com. My.VisualStudio.com требуется бесплатная подписка Dev Essentials или подписка Visual Studio.


Visual Studio 2015 с обновлением 3

Дата выпуска: 27 июня 2016 г.

Сводка новых средств в этом выпуске

  • Средства для Apache Cordova
  • Developer Analytics Tools
  • Отладка и диагностика
  • Интегрированная среда разработки Visual Studio
  • Средства для универсальных приложений Windows
  • Средства архитектуры
  • Visual C++
  • СредстваNode. js для Visual Studio
  • Средства для веб-разработчиков
  • TypeScript
  • C# и Visual Basic
  • Командный обозреватель
  • Xamarin
  • .NET Core 1.0.0 и .NET Core 1.0.0 SDK Preview 2

Новые возможности этого выпуска

Средства для Apache Cordova

Примечание

Версия Node.js, установленная с Visual Studio 2015 с обновлением 3, устарела. Чтобы обновить новый выпуск, узнайте больше о том, как безопасно обновлять Node.js.

Обновление 3 для Visual Studio 2015 включает в себя обновление 10 для средств для Apache Cordova, в том числе улучшения ниже.
Также см. сведения об обновлении 10. Последние новости о средствах доступны в нашем блоге разработчиков на GitHub.

  • Мы добавили поддержку Cordova 6.1.1; эта версия будет использоваться по умолчанию для новых проектов.
  • Мы удалили реестр подключаемых модулей Cordova, который использовался в Cordova версии 4.x. Это означает, что теперь для добавления подключаемых модулей требуется Cordova версии 5. x или более поздней версии.
  • Список базовых подключаемых модулей обновлен и теперь в него входят подключаемые модули для организаций (например, для таких ситуаций как: Intune, использование Azure, безопасность и локальное хранилище SQLite).
  • Теперь вы можете добавлять подключаемые модули из конструктора конфигурации по имени пакета NPM или по идентификатору.
  • Вы можете также добавлять подключаемые модули, требующие использования параметров из конструктора конфигураций.

Developer Analytics Tools

Мы внесли следующие улучшения в средства анализа для разработчиков 7.0.2:

  • Добавили тренды Application Insights, средство для поиска тенденций в телеметрии из вашего приложения.
  • Добавлена телеметрия исключений в CodeLens.
  • Данные о рабочей телеметрии добавлены в исключения в средствах диагностики.
  • Поддержка добавления Application Insights в проекты версии-кандидата 2 ASP.NET Core из Visual Studio.
  • События средств диагностики для проектов версии-кандидата 1 ASP.NET 5 RC1 и версии-кандидата 2 ASP.NET Core.
  • Автоматическое обновление поиска Application Insights при выборе расширенной фильтрации, временных диапазонов и событий.
  • Переход к коду из поисковых запросов.
  • Улучшенный вход в HockeyApp.

Дополнительные сведения см. в технических заметках о выпуске в документации по Microsoft Azure.

Отладка и диагностика

В обновление 3 добавлена поддержка средств диагностики для приложений, запущенных на устройствах OneCore, включая HoloLens и IOT.

Улучшения в возможности C++ «Изменить и продолжить»
  • Улучшенная производительность и надежность при использовании параметра FASTLINK.
  • Успешное применение изменений кода к статическим библиотекам, при котором больше не создается устаревший код.
  • Предупреждения C4656 больше не отображаются для ложных изменений типов при перекомпиляции.
  • Поддержка добавления нового типа с тем же именем, охватывающего несколько блоков компиляции.
Улучшения в пользовательском интерфейсе отладки XAML
  • Каждый раз при смене фокуса в приложении новая функция «Отслеживать фокус» динамического визуального дерева переместит выделение в дереве на элемент в фокусе.

Интегрированная среда разработки Visual Studio

Подписки и ключи продуктов

Мы выполнили просьбы клиентов, использующих подписки, работающие через веб-удостоверения или ключи продуктов, для разблокировки IDE, в обновлении 3 следующим образом:

  • Вам больше не потребуется переходить по ссылке https://my.visualstudio.com для активации назначенной вам облачной подписки Visual Studio. Можно приступать к работе с Visual Studio IDE сразу после назначения подписки.
  • Мы улучшили обработку ошибок при применении ключа продукта.
  • Все операции с учетной записью и лицензией пользователя теперь защищены с помощью HTTPS.
  • Мы сделали более удобным окно параметров учетной записи для активации подписки и ввода ключа продукта.
  • Чтобы поддерживать учетную запись персонализации в активном состоянии и синхронизировать перемещаемые настройки, больше не требуется повторная аутентификация каждые 8 дней.

Средства для универсальных приложений для Windows

Обновление 3 для Visual Studio 2015 поставляется с несколькими улучшениями для средств для универсальных приложений Windows. Основное улучшение состоит в том, что при создании пакета для отправки в Магазин Windows вы можете войти в систему с помощью учетных данных Azure Active Directory для учетной записи хранилища AAD. После связи проекта с Магазином Windows входить в систему при создании пакета и его отправке в Магазин больше не потребуется.

.NET Native для универсальных приложений Windows

.NET Native 1.4 — это дополнительный выпуск для обслуживания, повышающий производительность, исправляющий несколько ошибок, о которых сообщили клиенты, и сокращающий время компиляции сборки выпуска для крупных приложений. В XAML-приложениях и играх на Unity, которые используют . NET Native 1.4, повысится производительность во время выполнения. Этих улучшений удалось достичь, ускорив вызовы API отражений и машинного кода.

Средства для разработки архитектуры

Мы удовлетворили просьбы клиентов о повышении производительности и надежности.

Доменные графические конструкторы (включая EDMX и DBML)

В Windows 10 среда Visual Studio теперь отвечает, когда вы открываете или пытаетесь изменить крупные схемы EDMX или DBML во время отображения экранной клавиатуры.

Представление кода
  • Visual Studio теперь отвечает, когда вы пытаетесь «Создать карту кода для решения» в решении, содержащем проекты установщика (VDPROJ).
  • Visual Studio теперь отвечает при запуске команды карты кода из редактора кода и закрытии окна «Карта кода» сразу после его появления.
Проверка слоев
  • При сборке решения, проект моделирования которого содержит схему слоев с действием проверки, ядро ЦП больше не используется после завершения сборки.
  • Теперь вы можете проверить схему слоев, когда родительский проект моделирования ссылается на библиотеки PCL (например, ODP.Net).

Node.js Tools для Visual Studio

Версия-кандидат Node.js Tools 1.2 для Visual Studio доступна для скачивания. Ожидается, что этот выпуск значительно повысит стабильность и производительность, в том числе сократит количество сбоев из-за нехватки памяти, возникавших в предыдущих выпусках.

Другие улучшения

  • Более быстрый и улучшенный ES6 IntelliSense
  • Более надежная отладка
  • Улучшенный интерфейс модульного тестирования (включая поддержку лент)
  • Команда .npm в еще большем количестве типов проектов

Полные сведения и файлы для скачивания см. на странице выпуска версии-кандидата Node.js Tools 1.2.

Средства для веб-разработчиков

Для проектов веб-приложения ASP.NET процесс IIS Express больше не будет останавливаться при каждой остановке отладки, если установлен флажок «Включить функцию «Изменить и продолжить»».

Visual C++

В обновление 3 внесены такие улучшения, как новые проверки и предупреждения для компилятора C++, а также усовершенствования в сфере поддержки и производительности для программирования на C# и Visual Basic.

Компилятор C++
  • Теперь проверяется доступ для удаленного тривиального конструктора копирования или перемещения. Без этой проверки мы могли неправильно вызвать конструктор копирования по умолчанию (в котором могла быть неправильно сформирована реализация), что привело бы к потенциальным ошибкам в создаваемом коде среды выполнения.
  • Std::is_convertible теперь корректно обнаруживает присваивание типа класса самому себе, когда конструктор копирования удален или является закрытым.
  • В качестве последнего этапа завершения поддержки ATL с атрибутами в Visual Studio 2008 мы добавили новое предупреждение об устаревании в компилятор. Начиная с обновления 3 для Visual Studio 2015 при использовании кода ATL с атрибутами будет по умолчанию создаваться предупреждение уровня 1. C4467
  • При использовании PCH-файлов и неправильном включении каталогов с помощью -l в параметрах компилятора между -Yc и -Yu теперь будет создаваться новое предупреждение. C4599
  • При использовании PCH-файлов и неправильном использовании директив #include в исходных файлах между -Yc и -Yu теперь будет создаваться новое предупреждение. C4598

Дополнительные сведения о том, как эти изменения могут повлиять на существующий код, см. в статье Руководство по переносу и обновлению Visual C++ на сайте MSDN.

Библиотеки C++
  • Мы восстановили производительность режима отладки при уничтожении диапазонов тривиальных объектов, которые регрессировали в обновлении 2, как в vectorchar<>.

  • Мы реализовали переключимые признаки из рабочего документа C++17 из предложения P0185 Добавление [nothrow-]заменяемых признаков.
    Признаки (is_swappable, is_swappable_with, is_nothrow_swappable и is_nothrow_swappable_with) видимы, а ограничения std::swap активны только при компиляции с параметром /std:c++latest. Это новая, экспериментальная возможность C++17.

  • Удалены вызовы событий трассировки Windows из vcruntime140.dll и статических библиотек, которые ранее срабатывали при запуске процесса и dllmain.

  • Удалена длина имени символа в общем оборудовании контейнеров STL (например, std::vector), что сократило вероятность возникновения предупреждений C4503.
    Например, следующий тип больше не создает предупреждение: concurrency::concurrent_unordered_map< wstring, vectorpair< uint64_t, vector<< uint8_t>>>>.

  • ATL/MFC/AMP/PPL: множество сопутствующих исправлений, связанных с двухфазным поиском.

    • _com_ptr_t теперь имеет конструктор перемещения и оператор присваивания перемещением.

    • MFC: исправлена обработка значений HMENU, которые иногда мешали правильному отображению меню в 64-разрядных приложениях.

    • ATL и MFC: следующие предупреждения больше не создаются.

    • Переопределение и скрытие функций: C4263, C4264, C4266

    • Несовпадение спецификации исключений: C4986

    • /analyze: C6386

    • ATL: все виды AtlThrow теперь правильно отмечаются __declspec(noreturn). Это предотвращает появление ошибочных предупреждений SAL.

    • ATL: исправлены и улучшены некоторые заметки SAL.

    • /std:c++latest обеспечивает работу следующих новых возможностей: P0025R1 «clamp()», P0185R1 «is_swappable, is_nothrow_swappable» и P0272R1 «Non-const basic_string::data().».

    • /std:c++latest также управляет удалением следующих старых функций: N4190 «Удаление auto_ptr, random_shuffle(), И старый <функциональный> материал», P0004R1 «Удаление устаревших псевдонимов Iostreams», LWG 2385 «function::assign allocator argument не имеет смысла», и различные нестандартные функции (пространство имен std::tr1, некоторые механизмы только TR1 и структуру std::identity).

    • Неумолимый неверный кодеген в атомарном< int64_t>/atomic< uint64_t> в x86 был исправлен.

    • STL старается не использовать потокобезопасную «магическую статику» за исключением случаев, где она абсолютно нужна, что улучшает создаваемый код.

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

  • Сопрограммы

    • Не рекомендуется использовать следующие ключевые слова: __yield_value&__await. Используйте вместо этого co_await / co_yield.
    • В элементы to_address и from_promise класса coroutine_handle добавлено уведомление об устаревании. Вместо coroutine_handle::to_address() используйте coroutine_handle::address().
    • Вместо coroutine_handle::from_promise(Promise *P) используйте coroutine_handle::from_promise(Promise &P).
  • Улучшена производительность следующих параметров: std::equal и std::lexicographical_compare путем более активной диспетчеризации в memcmp и memchr, что привело к существенному повышению производительности в некоторых ситуациях. Например: equal(char,char,char, char) в 64-разрядных платформах.

    • Производительность сборок для отладки существенно улучшилась благодаря уменьшению числа вызовов функции регистрации в нашем итерационном механизме отладки.
    • string::p ush_back улучшила еще 40 % и обновление 2 в сборках выпуска, что значительно улучшилось в отладочных сборках. (Это улучшение дополняет существенное повышение производительности в обновлении 2.)
    • Отладка сборок во всех стандартных алгоритмах улучшилась за счет исключения нескольких типов пустых вызовов поддержки метапрограммирования шаблонов (например, _Iter_cat во всех алгоритмах, которые принимают предикаты за счет уменьшения числа копий предиката).
    • std::mismatch в _ITERATOR_DEBUG_LEVEL 1 и 2 путем проверки второго диапазона перед итерацией, где это возможно.
  • Улучшена диагностика для сообщений _SCL_INSECURE_DEPRECATE для оставшихся алгоритмов (в обновлении 2 с новым механизмом устаревания было связано лишь небольшое число алгоритмов). Это также способствует улучшению отладки для стандартных алгоритмов, так как больше не существует никаких взаимодействий препроцессора _ITERATOR_DEBUG_LEVEL, которые объявляют несколько копий стандартных алгоритмов. Мы также устранили следующие проблемы.

    • Исправлена невозможность компиляции некоторых функций, таких как mismatch(iter, iter, T[]), из-за взаимодействия между нашим нестандартным алгоритмом _ITERATOR_DEBUG_ARRAY_OVERLOADS и алгоритмом с двойным диапазоном.
  • Исправлены нарушения отключенного по умолчанию предупреждения C4242 в STL.

  • Исправлена возможная ошибка переполнения для целых чисел в std::pop_heap.

  • Исправлено потенциальное зависание /clr:pure из-за вставленных в CLR вызовов LoadLibrary при блокировке языкового стандарта.

Отладка C++/CLI
  • Оценщик выражений C++/CLI теперь поддерживает функции отладчика (например, Natvis), которые раньше поддерживались только для полностью нативных приложений. Теперь, когда объекты в смешанном управляемом нативном приложении отображаются в окне переменных (или в виде совета), они будут развернуты так же, как в полностью нативном приложении в соответствии с визуализаторами типов.
Набор средств платформы Clang/C2

Мы интегрировали Clang 3.8 в Clang и C2 и предоставили размещаемый 64-разрядный набор средств.

C++ MDD

Мы обеспечили поддержку последней версии Android NDK R11C и добавили возможность обновления текущих проектов до последней версии NDK.

TypeScript

Visual Studio 2015 с обновлением 3 включает TypeScript 1.8.34. Исправлена ошибка нехватки памяти в некоторых крупных проектах TypeScript, которые используют AngularJS.

C# и Visual Basic

Уменьшен используемый объем памяти и повышена производительность диагностики кода. Это позволит уменьшить количество сбоев из-за нехватки памяти в предыдущих выпусках. Мы улучшили производительность диагностики кода в рамках всего решения. Дополнительные сведения о повышении производительности диагностики кода описаны на странице Практическое руководство. Включение и отключение анализа всего решения для управляемого кода на сайте MSDN.

К дополнительным улучшениям относятся следующие.

  • Параметр для добавления ссылки на пакет NuGet, добавленный в качестве небольшого исправления:
  • Этот параметр можно включить в текстовом редакторе > инструментов >> C# > Advanced в разделе «Директивы using»:
  • Улучшена поддержка переносимых библиотек классов для различных версий платформы .NET Standard.
  • Повышена производительность возможностей C# «Перейти к» и «Найти все ссылки». Вы можете использовать эти возможности, выбрав объект, щелкнув его правой кнопкой мыши и выбрав возможность в меню.
  • При применении действия «Исправить все» к документу, проекту или решению теперь будет отображаться индикатор хода выполнения.
  • Повышена производительность при перезагрузке проектов C# и VB в крупных решениях. Дополнительные сведения и советы см. в статье Рекомендации по производительности для крупных решений.

Командный обозреватель

Исправлено несколько ошибок в Team Explorer:

  • Не удалось просмотреть содержимое файла, удаленного из репозитория Git.
  • При просмотре журнала ветви значок «Перейти к дочернему объекту» должен быть отключен, если в фокусе находится последняя фиксация.
  • При смене ветвей с помощью Git.exe может произойти сбой Visual Studio или его переход в неизвестное состояние.
  • При просмотре журнала ветви в репозитории Git в графике журнала могут возникать ошибки выделения.
  • При создании ветви в Team Explorer клавиши ALT+B для кнопки «Создать ветвь» конфликтуют с меню «Сборка».
  • В ситуации с большим объемом памяти при попытке распаковки объекта, превышающего доступную память, Git выдает ошибку «Объект не найден — не соответствует свободному объекту (<sha1>)» вместо ошибки нехватки памяти.
  • Опечатка в сообщении об ошибке «. .. Чтобы открыть это решение…».
  • При просмотре журнала ветви и щелчка правой кнопкой мыши первой сборки в журнале выборочный отбор отключен.
  • При создании запроса на включение внесенных изменений из Team Explorer в контекстном меню на странице ветвей используется текущая ветвь вместо выбранной.

Xamarin для Visual Studio

Visual Studio 2015 с обновлением 3 теперь включает Xamarin 4.1. В дополнение к ряду исправлений ошибок этот выпуск добавляет поддержку для tvOS, улучшает поддержку ресурсов iOS, улучшает возможности редактирования XML и добавляет селекторы для реализации SSL/TLS и HttpClient при создании приложений iOS.
Дополнительные сведения см. в заметках о выпуске Xamarin.

Visual Studio 2015 Обновление 3 Примечания к выпуску

  • Статья
  • 11 минут на чтение

Условия лицензии
| Блог Visual Studio
| Сообщество разработчиков

Примечание

Это не последняя версия Visual Studio. Чтобы загрузить последнюю версию, посетите текущие примечания к выпуску для Visual Studio 2019..


Выпуски Visual Studio 2015

Вы можете просмотреть примечания к выпуску для всех версий Visual Studio 2015:

  • 27 июня 2016 г. — Visual Studio 2015, обновление 3
  • 30 марта 2016 г. — Visual Studio 2015, обновление 2
  • 30 ноября 2015 г. — Visual Studio 2015, обновление 1
  • 20 июля 2015 г. — Visual Studio 2015
Загрузить Visual Studio 2015

Вы можете загрузить Visual Studio 2015 с сайта My.VisualStudio.com. Для My.VisualStudio.com требуется бесплатная подписка Dev Essentials или подписка Visual Studio.


Visual Studio 2015, обновление 3

Дата выпуска: 27 июня 2016 г.

  • Инструменты аналитики для разработчиков
  • Отладка и диагностика
  • Visual Studio IDE
  • Инструменты для универсальных приложений Windows
  • Архитектурные инструменты
  • Визуальный С++
  • Инструменты Node.js для Visual Studio
  • Инструменты веб-разработчика
  • TypeScript
  • С# и Visual Basic
  • Исследователь команды
  • Xamarin
    • .NET Core 1.0.0 и .NET Core 1.0.0 SDK, предварительная версия 2

    Что нового в этом выпуске

    Инструменты для Apache Cordova

    Примечание

    Версия Node.js, установленная вместе с Visual Studio 2015 Update 3, устарела. Чтобы выполнить обновление до более новой версии, узнайте больше о безопасном обновлении Node.js.

    Обновление 3 для Visual Studio 2015 включает средства для обновления 10 Apache Cordova, включая приведенные ниже улучшения.
    и Обновление 10. Последние новости о
    наши инструменты, посетите наш блог разработчиков на GitHub.

    • Мы добавили поддержку Cordova 6.1.1, версии по умолчанию для новых проектов.
    • Мы удалили реестр подключаемых модулей Cordova, который использовался в Cordova 4.x, а это означает, что теперь для добавления подключаемых модулей требуется как минимум Cordova 5.x или более поздняя версия.
    • Список основных подключаемых модулей был обновлен и теперь включает подключаемые модули для корпоративных сценариев, таких как Intune, взаимодействие с Azure, безопасность и локальное хранилище SQLite.
    • Теперь вы можете добавлять плагины из дизайнера конфигурации либо по имени пакета npm, либо по идентификатору.
    • Вы также можете добавить плагины, которые требуют параметров из дизайнера конфигурации.

    Инструменты аналитики для разработчиков

    Мы добавили следующие улучшения в Инструменты аналитики для разработчиков версии 7.0.2:

    • Тенденции Application Insights, инструмент для поиска тенденций в телеметрии вашего приложения.
    • Телеметрия исключений в CodeLens.
    • Данные производственной телеметрии добавлены в исключения в средствах диагностики.
    • Поддержка добавления Application Insights в проекты ASP.NET Core RC2 из Visual Studio.
    • События средств диагностики для проектов ASP.NET 5 RC1 и ASP.NET Core RC2.
    • Автоматическое обновление поиска Application Insights при выборе подробных фильтров, временных диапазонов и событий.
    • Перейти к коду из запросов в поиске.
    • Улучшен процесс входа в HockeyApp.

    Дополнительные сведения см. в технических примечаниях к выпуску в документации Microsoft Azure.

    Отладка и диагностика

    Средства диагностики
    поддержка приложений, работающих на устройствах OneCore, включая HoloLens и IOT, была добавлена ​​в обновлении 3.

    Улучшения C++ Edit and Continue:
    • Повышение производительности и надежности при включении FASTLINK.
    • Успешное применение изменений кода к статическим библиотекам больше не создает устаревший код.
    • Предупреждения C4656 больше не будут появляться при ложноположительном изменении типа во время перекомпиляции.
    • Поддержка добавления нового типа с тем же именем, пересекающего несколько единиц компиляции.
    Улучшения отладки пользовательского интерфейса XAML:
    • Всякий раз, когда в вашем приложении изменяется фокус, новая функция «Отслеживание фокуса» в динамическом визуальном дереве приведет к тому, что выбор в интерактивном визуальном дереве будет обновлен до элемента, на который в данный момент установлен фокус.

    Visual Studio IDE

    Подписки и ключи продуктов

    В обновлении 3 мы рассмотрели отзывы клиентов, использующих подписки через онлайн-удостоверение или ключи продуктов для разблокировки IDE следующими способами:

    • Вам больше не нужно посещать https://my.visualstudio.com, чтобы активировать назначенную подписку Visual Studio Cloud, и вы можете сразу начать использовать интегрированную среду разработки Visual Studio, как только подписка будет назначена.
    • Улучшена обработка ошибок при применении ключа продукта.
    • Все операции с учетными записями пользователей и лицензированием теперь защищены с помощью HTTPS.
    • Мы улучшили доступность диалогового окна «Настройки учетной записи» для активации подписки и ввода ключа продукта.
    • Повторная аутентификация каждые ~8 дней больше не требуется для сохранения активности учетной записи персонализации и синхронизации параметров роуминга.

    Инструменты для универсальных приложений Windows

    Обновление 3 для Visual Studio 2015 содержит несколько улучшений инструментов для универсальных приложений Windows. Ключевое улучшение позволяет вам входить в систему с учетными данными Azure Active Directory для магазина AAD.
    учетную запись при создании пакета для отправки в Магазин Windows. После того как проект будет связан с Магазином Windows, вам больше не нужно будет входить в систему, чтобы создать пакет для отправки в Магазин.

    .NET Native для универсальных приложений Windows

    . NET Native 1.4 — это второстепенный выпуск обслуживания, который повышает производительность, устраняет несколько ошибок, о которых сообщают пользователи, и сокращает время компиляции сборки больших приложений. Приложения XAML и игры Unity, использующие .NET Native 1.4, будут иметь более высокую производительность во время выполнения. Эти улучшения были достигнуты за счет ускорения вызовов рефлексии и собственного API.

    Средства архитектуры

    Мы рассмотрели отзывы клиентов о повышении производительности и надежности.

    Графические дизайнеры предметной области (включая EDMX и DBML)

    В Windows 10 Visual Studio больше не перестает отвечать на запросы, когда вы открываете или пытаетесь редактировать большие диаграммы EDMX или DBML, когда отображается экранная клавиатура.

    Карта кода
    • Visual Studio больше не перестает отвечать на запросы при попытке «Создать карту кода для решения», когда решение содержит проекты установщика (.vdproj).
    • Visual Studio больше не перестает отвечать на запросы, когда вы запускаете команду карты кода из редактора кода и закрываете окно карты кода, как только оно появляется.
    Проверка уровня
    • При построении решения, содержащего проект моделирования, содержащий диаграмму уровня с действием «Проверить», ядро ​​ЦП больше не используется после завершения сборки.
    • Теперь вы можете проверить диаграмму слоев, если ее родительский проект моделирования ссылается на библиотеки PCL (например, ODP.Net).

    Инструменты Node.js для Visual Studio

    Инструменты Node.js 1.2 RC для Visual Studio теперь доступны для загрузки. Мы ожидаем, что этот выпуск обеспечит значительно улучшенную стабильность и производительность, в том числе уменьшит количество сбоев из-за нехватки памяти, наблюдаемых в предыдущих выпусках.

    Другие особенности:

    • Быстрее, лучше ES6 IntelliSense
    • Более надежная отладка
    • Улучшенные возможности модульного тестирования (включая поддержку лент)
    • Команда . npm в других типах проектов

    Полную информацию и файлы для загрузки см. на странице выпуска Node.js Tools 1.2 RC.

    Инструменты веб-разработчика

    Для проектов веб-приложений ASP.NET, если флажок «Включить редактирование и продолжение» не установлен, процесс IIS Express больше не будет останавливаться каждый раз, когда вы останавливаете отладку.

    Visual C++

    Усовершенствования, такие как новые проверки и предупреждающие сообщения для компилятора C++, а также улучшения поддержки и производительности для кода C# и Visual Basic, были включены в обновление 3. доступ к удаленному тривиальному ctor копирования/перемещения. Без проверки мы можем неправильно вызвать копирующий ctor по умолчанию (в котором реализация может быть неправильно сформирована) и вызвать потенциальное создание плохого кода во время выполнения.

  • Std::is_convertible теперь правильно определяет самоназначение типа класса, когда копирующий конструктор удален или закрыт.
  • Поскольку в Visual Studio 2008 начался последний этап прекращения поддержки ATL с атрибутами, мы добавили в компилятор новое предупреждение об устаревании. В Visual Studio 2015 с обновлением 3 использование кода ATL с атрибутами будет генерировать предупреждение уровня 1 по умолчанию. C4467
  • При использовании файлов PCH несоответствие -I include каталогов компилятору между компиляциями -Yc и -Yu теперь будет выдавать новое предупреждение. C4599
  • При использовании файлов PCH несоответствие директив #include в исходных файлах между компиляциями -Yc и -Yu теперь будет выдавать предупреждение. C4598
  • Дополнительные сведения о том, как эти изменения могут повлиять на существующий код, см. в Руководстве по переносу и обновлению Visual C++ на сайте MSDN.

    Библиотеки C++
    • Мы восстановили производительность режима отладки при уничтожении диапазонов тривиальных объектов, которые регрессировали в обновлении 2, например, в vector.

    • Мы реализовали сменные трейты из рабочего документа C++17, из предложения
      P0185 Добавление [nothrow-]заменяемых черт.
      В качестве спекулятивной возможности C++17 черты ( is_swappable , is_swappable_with , is_nothrow_swappable и
      is_nothrow_swappable_with ) видны только, а ограничения на std::swap активны только при компиляции
      с /std:c++последний .

    • Мы удалили вызовы событий ETW из vcruntime140.dll и статических библиотек, которые ранее запускались при запуске процесса и dllmain.

    • Мы удалили длину имени символа в общем механизме, используемом контейнерами STL, таком как std::vector, что уменьшило вероятность появления предупреждений C4503.
      Например, следующий тип больше не генерирует предупреждение: concurrency::concurrent_unordered_map>>>.

    • ATL/MFC/AMP/PPL: множество исправлений соответствия, связанных с двухфазным поиском, а именно:

      • _com_ptr_t теперь имеет конструктор перемещения и оператор присваивания перемещения.

      • MFC: исправлена ​​обработка значений HMENU, которая иногда мешала правильному отображению меню в 64-битных приложениях.

      • ATL/MFC: больше не выводятся следующие предупреждения:

      • Переопределение/скрытие функции: C4263, C4264, C4266

      • Несоответствие спецификации исключения: C4986

      • /анализ: C6386

      • ATL: все варианты AtlThrow теперь правильно помечаются __declspec(noreturn) . Это предотвращает появление ошибочных предупреждений SAL.

      • ATL: исправлено/улучшено несколько аннотаций SAL.

      • /std:c++latest включает следующие новые функции: P0025R1 «clamp()», P0185R1 «is_swappable, is_nothrow_swappable» и P0272R1 «Неконстантная базовая_строка::data().».

      • /std:c++latest также управляет удалением следующих старых функций: N4190 «Удаление auto_ptr, random_shuffle() и старого <функционального> материала», P0004R1 «Удаление устаревших псевдонимов Iostreams», LWG 2385 «аргумент распределителя function::assign не имеет смысла», а также различные нестандартные функции (стандартный ::tr1, некоторые механизмы только для TR1 и структуру std::identity).

      • Неверный тихий генератор кода в atomic/atomic на x86 был исправлен.

      • STL теперь избегает использования потокобезопасной «магической статики», за исключением случаев крайней необходимости, улучшая codegen.

      • Идеальный конструктор пересылки Tuple теперь позволяет избежать конкуренции с конструктором копирования, исправляя ошибки компилятора в определенных сценариях.

    • Сопрограммы:

      • Устарело следующее: __yield_value и __await ключевые слова. Вместо этого используйте co_await / co_yield .
      • Добавлено уведомление об устаревании для: to_address и from_promise членов coroutine_handle класс. Вместо coroutine_handle::to_address() используйте coroutine_handle::address() .
      • Вместо coroutine_handle::from_promise(Promise *P) используйте coroutine_handle::from_promise(Promise &P) .
    • Мы улучшили производительность следующих компонентов:
      std::equal и std::lexicographical_compare за счет более агрессивной отправки в memcmp и memchr, что приводит к значительному повышению производительности в некоторых сценариях. Например: равно (char , char , char , char ) на 64-битных платформах.

      • отладка значительно улучшается за счет сокращения количества вызовов бухгалтерских функций в нашем механизме отладки итераторов.
      • string::push_back улучшен еще на 40% по сравнению с обновлением 2 в релизных сборках, с более существенными улучшениями в отладочных сборках. (Это в дополнение к значительным улучшениям производительности, которые появились в обновлении 2).
      • Сборки отладки для всех стандартных алгоритмов улучшены за счет исключения нескольких типов вызовов поддержки метапрограммирования пустых шаблонов (например, _Iter_cat ),
        во всех алгоритмах, использующих предикаты, за счет уменьшения количества копий предикатов.
      • std::mismatch ниже _ITERATOR_DEBUG_LEVEL 1 и 2 по диапазону, по возможности проверяя второй диапазон перед итерацией.
    • Мы применили улучшенную диагностику для сообщений _SCL_INSECURE_DEPRECATE к оставшимся алгоритмам (в обновлении 2 только небольшое количество алгоритмов было подключено к новому механизму устаревания). Это также улучшает процесс отладки при отладке стандартных алгоритмов, поскольку больше нет _ITERATOR_DEBUG_LEVEL взаимодействие препроцессора, объявляющее несколько копий стандартных алгоритмов. Мы также исправили следующее:

      • Исправлена ​​невозможность компилировать некоторые функции, такие как mismatch(iter, iter, T[]), из-за взаимодействия между нашим нестандартным _ITERATOR_DEBUG_ARRAY_OVERLOADS и алгоритмами двойного диапазона.
    • Исправлены нарушения предупреждения C4242 по умолчанию в STL.

    • Исправлена ​​возможная ошибка целочисленного переполнения в std::pop_heap.

    • Исправлено потенциальное зависание в /clr:pure из-за вставленных CLR вызовов LoadLibrary при удержании блокировки локали.

    Отладка C++/CLI
    • Оценщик выражений C++/CLI теперь поддерживает функции отладчика, такие как Natvis, которые ранее поддерживались только для чисто собственных приложений. Теперь в смешанном управляемом/собственном приложении, когда объекты перечислены в окне переменных (или внутри подсказки), они будут расширяться так же, как и в чисто собственном приложении, как определено визуализаторами типов.
    Набор инструментов для платформы Clang/C2

    Мы интегрировали выпуск Clang 3.8 в Clang/C2 и предоставили 64-разрядный набор инструментов для хостинга.

    C++ MDD

    Мы включили поддержку последней версии Android NDK R11C и возможность обновления текущих проектов до последней версии NDK.

    TypeScript

    Обновление 3 для Visual Studio 2015 включает TypeScript 1. 8.34. Мы исправили ошибку нехватки памяти в некоторых крупных проектах TypeScript, использующих AngularJS.

    C# и Visual Basic

    Мы вложили средства в сокращение объема памяти и повышение производительности диагностики кода. Это уменьшит количество сбоев из-за нехватки памяти, наблюдаемых в предыдущих выпусках. Мы повысили производительность диагностики кода для всего решения. Чтобы узнать больше об улучшениях производительности диагностики кода, прочтите страницу Практическое руководство. Включение и отключение полного анализа решения для управляемого кода на странице MSDN.

    Дополнительные улучшения включают следующее:

    • Возможность добавить ссылку на пакет NuGet в качестве быстрого исправления:
    • Этот параметр можно включить в меню Инструменты > Параметры > Текстовый редактор > C# > Дополнительно в разделе «Использование директив»:
    • Мы улучшили поддержку переносимых библиотек классов для платформы . NET Standard.
    • Мы добавили улучшения производительности в реализацию C# GoTo и Find All References. Вы можете попробовать их, выбрав объект, щелкнув его правой кнопкой мыши, а затем выбрав их в меню.
    • Когда вы применяете действие «исправить все» к документу/проекту/решению, теперь отображается индикатор выполнения.
    • Повышена производительность при перезагрузке проектов C# и VB в больших решениях. Дополнительные сведения и советы см. в разделе Вопросы производительности для больших решений.

    Team Explorer

    В Team Explorer исправлено несколько ошибок:

    • Невозможно просмотреть содержимое файла, удаленного из репозитория Git.
    • При просмотре истории ветки значок «Перейти к дочернему» должен быть отключен, если фокус находится на последней фиксации.
    • При смене веток с помощью Git.exe Visual Studio может аварийно завершить работу или перейти в неизвестное состояние.
    • При просмотре истории ветки в репозитории Git выделение в графе истории имеет сбои.
    • При создании ветки в Team Explorer сочетание клавиш Alt+B для «Создать ветку» конфликтует с меню «Сборка».
    • В ситуации с высоким использованием памяти при попытке распаковать объект, размер которого превышает доступную память, Git выдает ошибку «Объект не найден — нет соответствующего незакрепленного объекта ()» вместо ошибки нехватки памяти.
    • Опечатка в сообщении об ошибке «… Чтобы открыть это решение…».
    • При просмотре истории ветки и щелчке правой кнопкой мыши по первой фиксации в истории функция Cherry Pick отключается.
    • При создании запроса на вытягивание из контекстного меню страницы ветвей Team Explorer используется текущая ветвь вместо выбранной.

    Xamarin для Visual Studio

    Обновление 3 для Visual Studio 2015 теперь включает Xamarin 4.1. Помимо ряда исправлений ошибок, в этом релизе добавлена ​​поддержка tvOS, улучшена
    Поддержка каталога ресурсов iOS, улучшенный опыт редактирования XML и добавление селекторов для реализаций SSL/TLS и HttpClient при создании приложений iOS.
    Дополнительные сведения см. в заметках о выпуске Xamarin.

    cmake — Использование компилятора «Visual Studio 15 2017» в Visual Studio 2022 IDE

    Недавно я загрузил Visual Studio 2022 IDE. Во время установки я выбрал «Разработка рабочего стола с помощью C++» и «Инструменты сборки MSVC v141 — VS 2017 C++ x64/x86» (как предлагалось в ответах на аналогичные вопросы). Я хочу скомпилировать с помощью cmake -G "Visual Studio 15 2017 Win64" .. , но получаю следующую ошибку:

     Ошибка CMake в CMakeLists.txt:83 (проект):
      Генератор
        Visual Studio 15 2017 Win64
      не удалось найти ни одного экземпляра Visual Studio.
     

    cmake --help возвращает список доступных генераторов (сокращенный для удобочитаемости):
    На этой платформе доступны следующие генераторы (* по умолчанию):

     * Visual Studio 17 2022 = Генерирует файлы проекта Visual Studio 2022.
                                     Используйте параметр -A, чтобы указать архитектуру. 
      Visual Studio 16 2019 = Создает файлы проекта Visual Studio 2019.
                                     Используйте параметр -A, чтобы указать архитектуру.
      Visual Studio 15 2017 [arch] = Создает файлы проекта Visual Studio 2017.
                                     Дополнительно [arch] может быть «Win64» или «ARM».
    ...
     

    Этот вывод заставляет меня думать, что Visual Studio 15 2017 должна быть доступна, но, тем не менее, она не найдена.

    cmake --version возвращает cmake версии 3.23.22060601-MSVC_2 .
    Как я могу использовать генератор Visual Studio 15 2017 вместо новейшей версии Visual Studio 17 2022?

    • визуальная студия
    • cmake

    2

    Как я могу использовать генератор Visual Studio 15 2017 вместо новейшей версии Visual Studio 17 2022?

    Отвечая прямо: найдите и установите Visual Studio 2017. Однако это плохое решение.