Microsoft — мировой лидер в области ПО и ИТ-услуг
452,60
рейтинг
27 июня 2013 в 19:20

Разработка → Выпущена предварительная версия Visual Studio 2013

Несколько недель назад на конференции 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 Vista и соответствующие серверные ОС.
Основные усилия которые были приложены при разработке .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.


JavaScript и HTML


В Visual Studio 2012 вошло много новых функций связанных с поддержкой HTML и JavaScript. В этом релизе по мимо уже упомянутых возможностей связанных с асинхронной отладкой, так же вошел ряд новых функций.
В первую очередь это функции связанные с навигацией по коду, такие как переход к определению «Go to Definition» который поддерживает переход к областям видимости, напоминания о функциях которые не следует использовать (deprecated API), подсветка идентификаторов.


Так же был сделан ряд улучшений связанный с обозревателем DOM (DOM Expolrer). Например поддерживается поиск, прямое редактирование, встроенные стили и все это с режимом IntelliSence.


Blend для HTML так же поддерживает сетку и линейку. В дополнение к этому появилась функция редактирования CSS анимации:


Дополнительную информацию вы можете узнать из докладов Build 2013:


Диагностика


Как уже было упомянуто, в .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:


Онлайн IDE и Онлайн Приложения


Сейчас в индустрии очень много внимания уделяется приложениям которые имеют удобные функции, в том числе связанные с хранением и обработкой данных в онлайне. Visual Studio 2013 по праву можно назвать Онлайн IDE так как теперь, благодаря функциям хранения настроек в облаке, вы всегда можете получить ту настроенную среду к которой привыкли, вне зависимости от того на каком рабочем месте вы работаете. Все ваши настройки (тема, клавиатурные сокращения, настройки редактора и.т.п.) могут быть сохранены в облачном сервисе.


Так же Visual Studio 2013 позволяет вам с легкостью разрабатывать такие приложения. Одним из новшеств вошедших в этот выпуск является помощник подключения к мобильным сервисам Windows Azure. Буквально в несколько шагов вы можете создать, сконфигурировать, развернуть и запустить онлайн сервисы для своего приложения.


Дополнительную информацию вы можете узнать из докладов конференции Build 2013:


Удобство для программистов


Команда разработки 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
Microsoft
рейтинг 452,60
Microsoft — мировой лидер в области ПО и ИТ-услуг

Комментарии (64)

  • +4
    Интересно, как работает подсчет потребляемой приложением энергии? Берется некий усредненный сферический процессор в вакууме?
    • +7
      Немного сложнее. Есть базовые показатели, есть системные показатели, есть возможность сравнить количество используемых ресурсов приложением с используемыми ресурсами всей системы.

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

      Если интересно узнать больше, то рекомендую посмотреть на записи этих двух сессий после того, как они будут загружены:
  • +5
    А когда планируется полная поддержка C11, C++11 и C++11 STL? Новый код уже пишу используя новые стандарты, в итоге студия пока выпадает из поддерживаемых компиляторов. Компилируем с помощью mingw 4.8.
    • 0
      Кстати, полноценная поддержка С++ в статье — это поддержка большинства фич или всё-таки всех?
      • +2
        Картинка выглядит примерно так, о деталях расскажет Херб Саттер, ссылка на доклад в посте.
        Variadic templates yes
        Initializer lists yes
        static_assert Yes
        auto yes
        Trailing return types Yes
        Lambdas yes
        decltype yes
        Right angle brackets Yes
        Default template arguments for function templates yes
        Extern templates Yes
        nullptr Yes
        Strongly typed enums Yes
        Forward declared enums Yes
        Alignment yes
        Delegating constructors yes
        Explicit conversion operators yes
        Raw string literals yes
        Standard-layout and trivial types Yes
        Extended friend declarations Yes
        Local and unnamed types as template arguments Yes
        Range-based for-loop Yes
        override and final Yes
        Minimal GC support Yes
        ref-qualifiers No
        Non-static data member initializers No
        Expression SFINAE No
        Alias templates No
        Attributes No
        constexpr No
        Inheriting constructors No
        char16_t No
        Unicode string literals No
        Universal character names in literals No
        User-defined literals No
        Defaulted and deleted functions No
        Extended No
        Inline namespaces No
        Unrestricted unions No
        noexcept No
        • +2
          Non-static data member initializers No

          Эх, ведь это одна из причин почему на C++11 писать так просто:
          struct foo { int a = 5; int b = 2; };
        • +1
          А в 2010 студии что-то новое ожидать стоит?
          • +12
            Да, как и в Windows Vista
            • 0
              Хм, разве это такая большая сложность – обновить компилятор? Судя по этой таблице, 2010 студия должна поддерживаться до 2015 (основная поддержка). Думаю, в виде какого-то сервис пака вполне таки возможно, вот и задал вопрос.
              • +1
                Обновить компилятор без внесения breaking changes (даже банально выпустить багфиксы в сервиспаке) — очень большая сложность, во всяком случае так заявлял STL в одном из своих видео, сейчас уже наверное не найду в каком.
        • 0
          Кстати скоро будет его доклад channel9.msdn.com/Events/Build/2013/2-306
        • +1
          Alias templates No
          constexpr No
          Inheriting constructors No
          = nooooooooooooooo.com

          Грусть-печаль какая. я так надеялся хотя бы на constexpr к 13. а переходить на mingw компилятор не хочется, все-таки скорость компиляции оставляет желать, а это порой поважнее вкусных штук…
  • +5
    [sarcasm]
    Согласно традиции появится ещё одна версия несовместимых ни с чем солюшенов, ура!

    Ещё, любопытно, когда в команде VS появятся человеческие ресурсы чтобы сделать окна свойств проекта растягиваемыми.
    [/sarcasm]
    • +7
      Сейчас часть проектов 2010й студии открываются без конвертации в 2012й.
      Думаю убирать эту возможность никто не будет.
      • +1
        А вот наоборот не очень. Хотя можно переделать.
    • 0
      Ещё, любопытно, когда в команде VS появятся человеческие ресурсы чтобы сделать окна свойств проекта растягиваемыми.

      Если я вас правильно понял — все растягивается. ;)
  • +1
    Появился поиск в диалоге Options!!!
    (судя по скриншоту)
    • +3
      И это окно теперь ресайзится.
      • +3
        2013й год. Я не думал что доживу до этого момента.
  • +4
    Так, а с паралльной установкой 2012й и 2013й никаких проблем не замечено?
    • +1
      Нормально встала в отдельный каталог, запускаются параллельно, работать друг другу пока не мешают.
  • +1
    А експресс версию уже можно для коммерческой деятельности использовать?
    А когда релиз?
    • +5
      Экспресс версию можно было использовать для коммерческой деятельности с момента, когда она появилась.
  • +7
    Я на 2012-ю VS ещё перейти не успел толком.
  • 0
    Вчера поставил.
    У меня в отличие от 2012 нет подсветки и intellisense в cshtml :(
    На Windows 8 при runas administrator — падала 2 раза подняд, потом вдруг запустилась.
    Beta, короче.
  • НЛО прилетело и опубликовало эту надпись здесь
  • 0
    Даже этого маловато. Сидим на gcc дальше. Хочу трэды, хочу инит для не статиков. И как там с 7ой виндой?
    • +2
      Трэды как бы есть в 2012 уже.
    • 0
      да, мне например тоже интересно насчёт Windows 7. Если ли какие-то проблемы с установкой?
  • 0
    Мне интересно, а в Windows Store программах все так же Unhandled Exception показывает нам на точку входа в программу и никакого стек трейса?
  • +6
    Например многие .NET разработчики просили о возможности которая уже давно была доступна C++ программистам: просмотр результатов возвращаемых функцией прямо в отладчике, даже если эти значения не сохранялись в объявленных переменных
    Ох, наконец-то.
  • +3
    C11 не помешал бы. Ну или хотя бы C99 на первых порах.
    • +2
      Они всеми желанный С++11 не могут доделать никак, а вы С11 хотите. Да и как по мне, С11 и даже С99 не востребован на Windows платформе.
    • 0
      Не нашел сейчас ссылку, но кто то из Microsoft заявлял что поддержки C11 у них в планах вообще нет.
    • +1
      Они кстати поддерживают несколько новых возможностей C99 msdn.microsoft.com/en-us/library/hh409293%28v=vs.120%29.aspx
  • НЛО прилетело и опубликовало эту надпись здесь
  • –1
    Чтобы кодить под Win8.1 необходима 2013 студия? Или я так же могу спокойно делать это под 2012 студией?
    И да, а что с нумерацией? С чего вдруг нечетный номер?
    • +3
      И да, а что с нумерацией? С чего вдруг нечетный номер?
      2003, 2005?
    • 0
      > Чтобы кодить под Win8.1 необходима 2013 студия?

      Вроде достаточно установить Update 3 к Visual Studio 2012
      • 0
        Зависит от того, что кодить. Если хочется разрабатывать Windows Store Apps для Windows 8.1 Dev Preview, то нужна все таки Visual Studio 2013 Preview.
        Update 3 просто фиксит некоторые проблемы совместимости VS 2012 с Windows 8.1. Но он не добавляет возможности разработки под Windows 8.1.
  • –1
    А я всё жду, когда же, наконец, хоть один разработчик догадается понять, что исходник — это не обязательно текст, я хочу рисовать стрелочки, крючечки и рожицы прямо в программе, задолбался уже в строки пялиться. И вообще, зачем все GUI рисуют строку, на которой есть только { или } в полную высоту строки? Пол программы — одни эти пустые строки. GUI, наверно, тоже менеджеры разрабатывают, которые никогда программы не писали.
    • +1
      А я всё жду, когда же, наконец, хоть один разработчик догадается понять, что исходник — это не обязательно текст, я хочу рисовать стрелочки, крючечки и рожицы прямо в программе, задолбался уже в строки пялиться.
      Вам сюда
      • 0
        Ой нет. Меня наверно сложнее понять, чем цветовые таблички:)) Я говорю о том, что в программах — в исходниках надо делать пометки. Графически. В ворде же 20 лет назад уже можно было возле текста стрелочку нарисовать или человечка, а в GUIях этого до сих пор нигде нет. Слелали бы в ворде кнопку Compile или в вижал студии Вставка-Рисунок. Можно было бы смотреть на программы и сразу видеть что к чему.
        • 0
          Некоторые выходят из этого положения рисуя псевдографику в комментариях.

          Вы же понимаете, что сейчас, когда исходник — это текстовый файл, его можно отредактировать чем угодно и скомпилировать одним из множества компиляторов. Если вы сделаете исходник rich textом например, вы ограничите себя (и не только себя, а любого человека, который захочет редактировать этот исходник) в выборе редактора. Да и парсеры компиляторов придется усложнить.

          Другое дело, что картинки можно складывать отдельными файлами рядом с исходниками, а в исходники в комментариях вставлять ссылки на них. Тогда IDE могла бы как-то умно их показывать сама, не заставляя пользователя вручную эти файлы открывать. Но это можно реализовать и на уровне плагина к то же Visual Studio, не обязательно это делать в IDE из коробки.
          • 0
            В микросфте к 2005му году научились сделать нормальную Visio, которая не теряла стрелки при перемещении объектов. Объекты сцепляются друг с другом — что угодно с чем угодно, я даже прогу свою разрисовал в визио, повесил на стенку и неделю изучал. Иначе было просто не подкопаться. Бухгалтерия — она такая…

            Я думаю у микрософта нет проблем с тем, чтобы хранить текст исходников в XMLе, пусть там будет тег Source и в нем сам текст на C#, а в другом теге второй слой, который компилить не надо никогда, без инструкций — просто схема для человека, ввязанная в соурсы.

            Это ведь так просто сделать и это полностью изменит програмирование навсегда. Но не те люди в этих конторах идеи придумывают, они только кнопки в интерфейсе из года в год перечерчивают, от чего всё начинает безумно тормозить на старых компах.
            • 0
              Опубликуйте свою идею на uservoice и посмотрите, сколько голосов она соберёт. Если вдруг так случится, что соберёт много — не исключено, что её таки реализуют.
              • 0
                Я еще подожду: пусть либо русский учат, либо меня на работу зовут, а может и кто-то другой захочет прославиться. Я ни им, ни прогрессу, ни славе идеи не задолжал.… Еще мне надо об ихнюю стену лбом биться:) Я здесь только намекаю, чтобы взрослые дядьки в будущее заглянули и выводы сделали. А то целая индустрия микрософт-ресёч только и может выдумать квадрат как у малевича.
                • 0
                  Ну правильно, вместо того, чтобы оставить фичереквест в специально отведённом для этого месте или самому реализовать эту функциональность (или хотя бы концепт) в виде Add-In, лучше «намекать» на хабрахабре.
                  • 0
                    Да, я именно так и считаю. Лучше намекать на хабре. Чем дураков учить лбом об стену долбить, пускай нормальный человек намёки прочтет и нашу великую цивилизацию своими подвигами простлавит.
          • +2
            Плагин который вставляет картинки в исходники давно есть. Особым успехом не пользуется visualstudiogallery.msdn.microsoft.com/793d16d0-235a-439a-91df-4ce7c721df12/

            image
            • 0
              Надо будет попробовать, если там есть инструмент карандаш и табличка, то у меня начнется новая жизнь!
    • 0
      Всё смешалось в доме Обломовых…
      • 0
        А у вас в программах ничего не смешалось? Мне все эти исходники на вид, когда я их вижу — все одинаковы. Или вы считаете, что чем скуднее выглядит исходник, тем он от этого упорядоченнее?
      • 0
        Спутать Обломова и Облонских…
        Фурсенко постарался?
        • 0
          Признаться и до него никто толстые книги раньше времени не читал.
    • –1
      Видимо я угадал про менеджеров:)
  • 0
    Настройки в облаке — красота, интересно, они тоже будут периодически сбрасываться в ноль при неудачном креше?
    • –1
      Их в принципе и сейчас можно хранить в облаке, при том — в любом облаке, в каком захочешь. Лучше бы вместо этого диалоги сделали изменяющегося размера.
    • 0
      Мне бы больше подошла настройка per solution. Чтобы команде раздавать.
  • 0
    Как я понял, теперь для регистрации Express версии просто ввода ключа недостаточно? Нужно логиниться с liveid?
  • 0
    Проект TypeScript начинается с ошибки и не хочет подсвечиваться

Только зарегистрированные пользователи могут оставлять комментарии. Войдите, пожалуйста.

Самое читаемое Разработка