К основному контенту

C++ в Visual Studio 2013 или зачем на нее переходить?

Зачем переходить на VS 2013 C++ разработчику?
Этот вопрос, я думаю, возникал у многих. За долгое время привыкшие к, мягко говоря, нечастым релизам студии, разработчики за год получили 5!! релизов (2012, U1,2,3,2013). И это не считая VS 2012 U4, который сделали для тех, кто не может позволить перейти на 2013 прямо сейчас (по финансовым или техническим соображениям). В общем, Microsoft держит свое обещание и выдает релизы раз в квартал. Нам остается только подстраивать свою работу.

Так что же может нас сподвигнуть на очередное обновление? (Тут можно найти достаточно подробное его описание).

Ну, во-первых, новый релиз наконец то включает в себя новшества реализованные еще в November 2012 CTP. Также были добавлены новые фишки, даже из C++14.

Эта тема очень популярна и в инете много информации с подробностями. Я не буду углубляться. Но только ради этого стоит ломануться все переделывать под новую студию :)

Во-вторых, Just My Code во время отладки - отличная тема, теперь и для С++. А также Async Debuging.

В-третьих, улучшения IDE (начиная с 52 мин этого видео):
Расширены возможности форматирования C++ кода (Ctrl+K, Ctrl+F - переформатирует выделенный кусок кода по правилам заданным в настройках). Настройки форматирования можно экспортировать/импортировать.


Улучшения в scrollbar



Ctrl+comma - поиск всего и везде* (см. коммент ниже)


*Но поиск работает только по объявлениям, определениям и использованию. Обычный текст не ищется. К сожалению, конструкции вида: TEST_F(CSessionCacheTest, CheckClearCache) тоже не анализируются и CheckClearCache найден не будет.

Офигенная тема: Alt + F12 (возможно неоднократное использование AltF12 внутри окошка и переключение по мини-табам)



Ctrl + K, Ctrl+O - переключение между cpp и h файлами

Улучшен вывод результатов статического анализа (группировка по типу).

Quick Launch (в тч для поиска настроек)


Размеры диалогов настроек проектов и настроек студии теперь можно изменять :)

Из прикольного: есть возможность отладки CPython кода :)

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

Еще немного новостей:
"Desktop is still here" (Visual C++ in 2013 and Beyond и текстовый вариант)
Microsoft продолжает волновать тема отсутствия нормального С++ UI-фреймворка для десктоп-приложений. Видимо MetroUI (или как его сейчас называют Modern UI) не всегда удовлетворяет всем запросам и потребители продолжают бомбить Microsoft запросами на десктоп-приложения. Подождем, может что и получится из этого.

Refactoring tool для C++ в Visual Studio 2013 (также упоминается в видео выше)
плагин который дает возможность сделать только rename (полный аналог фичи для C# - диалог с предложенными изменениями по всему солюшену, возможность частичного выбора/отмены, превью, полный undo).
Известные проблемы: нет отмены процесса переименования и поиска, проблемы с  макросы и шаблонами.
Очень хотят фидбек.
Понятно, что если сравнивать с Visual Assist, то выглядит слабенько. Но зато бесплатно. И переименование является, пожалуй, самой распространенной операцией рефакторинга.

Уже доступны Productivity Power Tools 2013. Подробности по линку, я использую, очень удобно.

Интересное хардкор видео про С++ компиляцию и оптимизацию в VS 2013.

Выпуск Visual C++ Compiler November 2013 CTP (очередные плюшки для C++ программистов). Больше подробностей от Stephan T. Lavavej, который уже подготовил очередную видео лекцию из серии "Core C++, 10 of n" на эту тему и подробный пост. Еще материалы: неплохая текстовочка с примерами, лекция про resumable functions.

Анонс и готовый RC Visual Studio 2013 Update 1 RC.

Комментарии

Популярные сообщения из этого блога

Mock vs Stub

Когда мы начали изучать модульное тестирование, то одними из первых терминов, с которыми пришлось познакомиться, стали Mock и Stub. Ниже попробуем порассуждать в чем их сходство и различие, как и для чего они применяются. Проверять работоспособность тестируемого объекта (system uder test - SUT) можно двумя способами: оценивая состояние объекта или его поведение. В первом случае проверка правильности работы метода SUT заключается в оценке состояния самого SUT, а также взаимодействующих объектов, после вызова этого метода. Во-втором, мы проверяем набор и порядок действий (вызовов методов взаимодействующих объектов, других методов SUT), которое должен совершить метод SUT. Собственно, если коротко, то в одном случае используется Stub, а в другом Mock. Это объекты, которые создаются и используются взамен реальных объектов, с которым взаимодействует SUT в процессе своей работы. Теперь подробнее. Gerard Meszaros использует термин Test Double (дублер), как обозначение для объек

План "Б" или как прикольно провести субботний день

Всем привет. Вчера состоялась конференция " План Б ". Организаторами выступили ребята из Яндекса, за что им большое спасибо. Судя по приблизительным подсчетам в мероприятии участвовало около 200 человек. Основной темой конференции было планирование, планирование всего: проектов, разработки, тестирования, дизайнеров и даже организации музыкального фестиваля. Сначала думал написать отчет в обычном своем стиле: кто и что говорил, но почитав твиттер по #pbconf понял, что просто потеряю время :) Поэтому кому оооочень интересно узнать подробности следуйте за птичкой и вы все узнаете (тэг #pbconf попал в top-30 твиттера) Здесь приведу лишь те вещи, которые мне запали в мозг Роман Чернин о продуктовой разработке: "нет заказчика, нет требований, нет сроков -> как принимать решения? ответ: заводим себе Product Manager-а" Оля Павлова (@op): "бойтесь иллюзии точной формулировки" "заказчик - ребенок, выдаем ему игрушку как можно ча

Переключите тумблер или умные люди дурного не посоветуют

Навеяно интересными вопросами про TDD после  вчерашнего выступления . Uncle Bob : " Flipping the Bit " Подробнее постараюсь перевести чуть позже, пока только это: Как определить, что у коллеги (или у вас) ТУМБЛЕР переключен?  Если ваши ответы на вопросы ниже совпадают с приведенными - то все хорошо :) Мантра: Сможете ли вы выполнить работу быстрее используя TDD? ДА Существуют ли какие-либо задачи, которые вы можете выполнить быстрее без TDD? НЕТ Я понимаю, что TDD может помочь в долгом проекте, а что если у вас короткая задача? Будете использовать TDD? Да, потому что TDD быстрее даже в короткой перспективе Что если времени реально не хватает, и босс стоит над душой, будете ли вы использовать TDD? ДА В любом случае? ДА Есть ли случаи, когда вам не нужно использовать TDD? НЕТ Представьте себе что вы на звездном корабле Enterprise ( Star track ) и осталась всего секунда до взрыва антиматерии. Все что вам нужно, чтобы избежать этого, поменять один IF. Будете ли вы и