Несколько недель назад на конференции Teched North America 2013 был сделан анонс Visual Studio 2013, и было рассказано о некоторых новых возможностях этой среды. Вчера, на конференции Build 2013 было объявлено о доступности предварительной версии Visual Studio 2013, Net Framework 4.5.1 и Team Foundation Server 2013 которые вы можете загрузить уже сейчас.
О тех новшествах которые мы включили в новые версии Visual Studio 2013 и Team Foundation Server 2013 будет трудно рассказать в рамках небольшой заметки, поэтому уже сейчас идет подготовка к онлайн конференции которая пройдет 5 июля. В рамках этого онлайн мероприятия ведущие эксперты Microsoft познакомят вас с новыми инструментами разработки и тестирования Visual Studio 2013. На конференции мы расскажем последние новости из мира разработки приложений, которые вы сможете создавать в Visual Studio 2013, а также представим последние технологии управления жизненным циклом приложений на базе Team Foundation Server 2013.
Обязательно присоединяйтесь к нам 5 июля!
.NET
Вместе с Visual Studio 2013 на конференции был сделан анонс обновления .NET Framework, его новая версия будет выпущена под индексом 4.5.1 и в нее войдет ряд новшеств и новых функций. Это обновление входит в комплект поставки предварительной версии Visual Studio 2013 но так же может быть установлен в виде отдельного пакета на операционные системы Windows 8, Windows 7, Windows 7 и соответствующие серверные ОС.
Основные усилия которые были приложены при разработке .NET 4.5.1 связаны с функциями отладки и диагностики. Например многие .NET разработчики просили о возможности которая уже давно была доступна C++ программистам: просмотр результатов возвращаемых функцией прямо в отладчике, даже если эти значения не сохранялись в объявленных переменных. С .NET 4.5.1 и Visual Studio 2013 эта возможность появилась. Особенно полезной эта функция будет в случаях если вы используете функцию как аргумент для другой функции:
Еще одна новая возможность за которую было отдано очень много голосов на сайте User Voice является возможность внесения изменений в код во время отладки приложения в 64х битном режиме:
Еще одним важным новшеством которое потребовало внесения изменений в платформу .NET является возможность более наглядной отладки асинхронного кода. Многие программисты которые разрабатывают приложения для Windows 8 знают, что асинхронный код стал основным инструментом при создании быстрых и отзывчивых приложений. Отладка такого кода стала повседневной задачей и внесение удобств в эту область было очень ожидаемо со стороны сообщества разработчиков. В первую очередь это связано с тем что при останове программы было достаточно трудно выяснить контекст выполнения асинхронной функции, так как промежуточные вызовы отображаемые в окне стека не давали понять порядок вызовов. В Visual Studio 2013 теперь есть возможность увидеть детальную и наглядную информацию о контексте выполнения асинхронных функций тем самым значительно облегчить отладку такого кода.
Это новшество к тому же доступно не только программистам которые ведут разработку на языках платформы .NET но так же и разработчикам на JavaScript и C++.
В дополнение к новинкам связанным с отладкой и диагностикой, в .NET 4.5.1 войдут обновления связанные с производительностью. Например это компактификация GC по запросу для больших объектов в куче, более быстрый запуск приложений на многоядерных системах. Более подробно о новинках .NET 4.5.1 можно узнать из доклада Хабиба Хейдарьяна.
С++
Одним из самых ожидаемых новшеств со стороны сообщества программистов C++ является полноценная поддержка стандарта C++11. Компилятор входящий в состав Visual Studio 2013 включает поддержку таких ожидаемых возможностей как делегируемые конструкторы (delegating constructors), сырые строковые литералы (raw string literals), явные операторы преобразований (explicit conversion operators), вариационные шаблоны (variadic templates).
В дополнение к новшествам компилятора, многих C++ разработчиков порадует функция Visual Studio, которой давно пользуются .NET программисты. Это режим отладки “Just My code” который показывает только код созданный в рамках решения при отладке сложных приложений, и позволяющий сосредоточить свое внимание только на важных моментах, опуская из окна отладки стека вызовы в CRT и другие библиотеки:
Редактор Visual Studio так же получил ряд новшеств которые связаны с C++ кодом, например режим быстрой навигации между файлом кода и соответствующим ему заголовочным файлом, а так же улучшенными возможностями форматирования C++ кода.
В дополнение к этому была улучшена производительность C++ AMP и C++ авто-векторизатора, C++ REST SDK а так же улучшения в отладке которые включают новые режимы смешанной отладки, например C++ и JavaScript кода, новшества в Profile Guided Optimization и многое другое.
Более подробно о новинках а так же будущем C++ можно узнать из докладов Тарека Мадкура «Что нового в Visual Studio 2013 для C++ разработчиков» доклада Херба Саттера «Будущее C++» и блога команды Visual C++.
XAML
В дополнение к изменениям в языках C++ и .NET так же было реализовано множество новых функций в редакторе XAML которые помогут упростить и ускорить разработку интерактивных приложений базирующихся на этой технологии. Это такие новые функции как поддержка IntelliSence для связывания с данными и ресурсами (data binding), опция «Go to Definition» (переход к определению) при работе с стилями и сниппетами кода. Визуальный дизайнер Blend теперь включает линейки и сетку, которая упрощает выравнивание элементов. Так же в Blend вошел ряд изменений связанных с стилями и шаблонами которые значительно упрощают работу с ними и позволяют редактировать стили в контексте их использования. Для многих новых элементов управления (AppBar, Hub, Flyout) появился режим дизайна, что позволяет более точно видеть конечный результат не прибегая к многократным запускам приложения.
Тем, кто особо ценит отзывчивые приложения, понравится инструментарий XAML UI Responsiveness. В Visual Studio 2012 уже входит похожий инструмент для JavaScript HTML приложений, который позволяет бороться с всевозможными «замираниями» и «подвисаниями» интерфейса пользователя. В Visual Studio 2013 вы можете использовать его для изучения отзывчивости и XAML приложений.
Так же для улучшения качества Windows Store приложений в Visual Studio 2013 включена поддержка программируемых тестов интерфейса (coded UI Tests).
Дополнительную информацию о многих новинках связанных с XAML можно узнать из докладов конференции Build 2013.
- Tim Heuer's Build talk "What's New in XAML"
- Unni Ravindranathan’s Build talk “What's New in Visual Studio & Blend for XAML Developers”
- Harini Kanan's Build talk «Creating Your First App Using XAML»
- Pratap Lakshman’s Build talk “Visual Studio 2013 Diagnostics Tools for XAML-based Windows Store Apps”
- Prachi Bora’s Build talk “Automated Testing of XAML-based Windows Store apps”
JavaScript и HTML
В Visual Studio 2012 вошло много новых функций связанных с поддержкой HTML и JavaScript. В этом релизе по мимо уже упомянутых возможностей связанных с асинхронной отладкой, так же вошел ряд новых функций.
В первую очередь это функции связанные с навигацией по коду, такие как переход к определению «Go to Definition» который поддерживает переход к областям видимости, напоминания о функциях которые не следует использовать (deprecated API), подсветка идентификаторов.
Так же был сделан ряд улучшений связанный с обозревателем DOM (DOM Expolrer). Например поддерживается поиск, прямое редактирование, встроенные стили и все это с режимом IntelliSence.
Blend для HTML так же поддерживает сетку и линейку. В дополнение к этому появилась функция редактирования CSS анимации:
Дополнительную информацию вы можете узнать из докладов Build 2013:
- Polita Paulus and Ryan Salva's Build talk "Creating your first app using HTML and JavaScript".
- Ryan Salva's Build talk "What's New in Blend for HTML Developers"
Диагностика
Как уже было упомянуто, в .NET 4.5.1 и Visual Studio 2013 вошло много новшеств упрощающих отладку и диагностику приложений, таких как отладка асинхронного кода, 64х битный режим “Edit and Continue”, режим “Just My Code” для C++. В дополнение к этому так же появилась совершенно новый раздел – хаб «Performance and Diagnostics» в котором «под рукой» сосредоточены все инструменты для диагностирования и изучения производительности разрабатываемых приложений.
Одной из самых интересных новинок является инструмент диагностики потребляемой энергии. Время жизни от батареи является одним из важных параметров удобства устройства и если ваше приложение слишком интенсивно потребляет энергию это может напрямую повлиять на время жизни самого устройства. Для того чтобы более детально изучить эти параметры в Visual Studio 2013 включен инструмент профайлинга “Energy Consumption”. Он позволяет детально изучить как ведет себя приложение, сколько времени может проработать устройство при его непрерывном запуске и какие регионы кода наиболее интенсивно потребляют энергию.
В дополнение к этому в Visual Studio 2013 так же появились новые функции анализа управляемой памяти. Часто разработчики хотят получить детальную информацию о поведении приложения во время эксплуатации в «боевой» среде, узнать какие объекты находятся в памяти процесса, определить, нет ли утечек памяти. В Visual Studio 2013 включена поддержка анализа управляемой памяти. С помощью специальных файлов-дампов которые формируются по запросу может быть осуществлена дальнейшая диагностика и анализ этих файлов в среде Visual Studio c помощью меню “Debug Managed Memory”
После загрузки *.dmp файла у программиста появляется возможность обзора .NET объектов в процессе и даже сравнения двух разных дампов для более детального изучения поведения приложения в динамике.
Дополнительную информацию вы можете получить из докладов конференции Build 2013:
- Andrew Halls’ “Diagnosing issues in JavaScript Windows Store Apps with Visual Studio 2013”
- Pratap Lakshman’s “Visual Studio 2013 Diagnostics Tools for XAML-based Windows Store Apps”
Онлайн IDE и Онлайн Приложения
Сейчас в индустрии очень много внимания уделяется приложениям которые имеют удобные функции, в том числе связанные с хранением и обработкой данных в онлайне. Visual Studio 2013 по праву можно назвать Онлайн IDE так как теперь, благодаря функциям хранения настроек в облаке, вы всегда можете получить ту настроенную среду к которой привыкли, вне зависимости от того на каком рабочем месте вы работаете. Все ваши настройки (тема, клавиатурные сокращения, настройки редактора и.т.п.) могут быть сохранены в облачном сервисе.
Так же Visual Studio 2013 позволяет вам с легкостью разрабатывать такие приложения. Одним из новшеств вошедших в этот выпуск является помощник подключения к мобильным сервисам Windows Azure. Буквально в несколько шагов вы можете создать, сконфигурировать, развернуть и запустить онлайн сервисы для своего приложения.
Дополнительную информацию вы можете узнать из докладов конференции Build 2013:
- Josh Twist's Build talk "Mobile Services — Soup to Nuts"
- Nick Harris' Build talk "Build connected Windows 8.1 Apps with Mobile Services"
Удобство для программистов
Команда разработки Visual Studio постоянно изучает то как программисты используют IDE и какие улучшения могут повысить производительность работы и удобство. Visual Studio 2013 включает ряд новинок в этой области.
Одной из таких новинок является технология CodeLens (Информационные индикаторы кода). Об этой технологии уже было рассказано на конференции TechEd. Эта возможность позволяет прямо в коде отображать важную информацию о типах, количестве ссылок, пройденных тестах, изменениях в коде:
Еще одной новинкой в этой области является всплывающее окно определения функций «Peek Definition». В Visual Studio уже есть функция “Go to Definiton” которая открывает новое окно документа. Теперь вы так же можете открыть небольшое окно «Peek Definiton» чтобы узнать детали реализации интересующей функции:
В дополнение к этому, на основе функций включенных в пакет Productivity Power Tools, на скроллбаре редактора теперь отображается важная информация о текущих и несохраненных изменениях в файле и точках останова.
Начните изучать Visual Studio 2013 уже сейчас!
Visual Studio 2013 как и Team Foundation Server 2013 доступны для загрузки уже сейчас. Помимо упомянутых новшеств IDE в эти продукты так же входит много новых функций связанных с совместной работой, разработкой приложений для Office, поддержка портируемых библиотек для языка F#, расширения функций ASP.NET, поддержка Python и многое другое. Более детально о этих новинках вы сможете узнать из записей докладов конференции Build 2013, сайта MSDN, и блогов.
Автор: dmandreev