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

Сообщения

Показаны сообщения с ярлыком "С-plus-plus"

Конференция C++ Russia 2018 Санкт-Петербург - отзыв

20-21 апреля 2018 в Питере прошла очередная конференция C++ Russia. В прошлый раз  я был нахаляву, сейчас, спасибо SEMrush, не страдал от того, что мое участие хоть как-то не возместило трудозатраты Сергея Платонова , бессменного организатора C++ Russia. Сам С++ я не вижу уже больше года :( , поэтому извините за уход от контента в сторону качества докладов с точки зрения подготовки докладчиков и слайдов, и просто атмосферы, которую попытался передать фоточками.

Работа с git в Visual Studio 2015 Update 2 (smoke view новшеств)

В интерфейсе Visual Studio 2015 Update 2 для работы с git появились новые возможности и поменялись те, что раньше были. Да, я знаю, что есть много других инструментов, но студия ближе (чур не кидаться помидорами) :) Материалов в сети по этим новшествам немного и они разрозненны. Если кто встречал, что полезное - кидайте ссылки в комменты. Мы сейчас в процессе перехода и вот, что я успел наковырять:

Конференция C++ Russia 2016

Благодаря подкасту DevZen сходил на конференцию C++ Russia 2016 в Питере. Стоимость участия была небольшой, даже если оплачивать ее самостоятельно, но были сомнения в том, что о C++ (да о любом языке программирования) можно общаться в формате конференции. И даже прошлогоднее участие в PiterPy#2 не избавило меня от мнения, что "языковые" конференции - это сложно. Подарочный билет отмел последние сомнения ( за эту халяву мне стыдно перед Серегой ) и вот очередной отчет с конфы.

Релиз Visual Studio 2015

Просто линк , чтобы потом не искать. Внутри много полезных ссылок по новшествам в этой студии касательно C++ Еще один линк про поддерживаемые таргетные Windows-платформы. Поддержка C++ не устанавливается при сетапе по умолчанию . Странное решение.

Сборная солянка видеодокладов для самообразования на разную тематику - Выпуск 2

Scott Meyers - Keynote @ Meeting C++ 2014 The evolving search for effective C++   Интересный, общепознавательный доклад Скотта про то, как он писал свою знаменитую книгу  ( тут ссылка для жадных  экономных), о том "что" важно говорить людям, когда вы их учите, и "как" это говорить. Первая часть - это история про главу из книги, посвященную разнице между insert & emplace в STL-контейнерах. На этом примере Скотт показывает важность пунктов из своего списка: Пункты из правил написания эффективной книги могут помочь и в определении ее эффективности и с позиции читателя. Думаю, многие пункты и для статьи в блоге подойдут. Вторая часть ( ссылка со сдвигом по времени ) больше познавательная и тренирующая английский. Разговор идет о том, как доносить информацию правильно. Часть скорее для тех, кто выступает, или хочет выступать. Есть немного и про то, как важно использовать современные технологии при печати книг (например использовать многоцветную печат...

Немного интересных ссылок про C++ из новостной ленты #2

Вторая серия ссылок долго ждала очереди и поэтому их накопилось много. Первая серия . Свежее Релиз С++14 Подробнее о том, что нового и как это было : лаконично и без растекания по древу. Хотя постов в интернете много. Lambda-expressions in C++14 Lambda-expression is the most interesting feature in C++11 that challenges the long-used way of defining functions.  C++14 proposes two major supplements  to this famous feature. Draft of Effective Modern C++ Уже можно купить электронный вариант  релиз-кандидата книжки  Скотта Мейерса или заказать печатный вариант. Ценник немаленький, но эта книжка станет классикой. " Yet another threading framework: асинхронная разработка на C++ под мобильные устройства " В докладе Дмитрий Жестилевский представляет подход к написанию понятного и производительного асинхронного кода на С++, который применяется в разработке библиотек для мобильных геоприложений в Яндексе. Видео и слайды Awesome C/C++ Кладезь ресурсов и инфор...

Как отлаживать (дебажить) оптимизированный код в Visual Studio 2013 (2012)

Недавно был анонсирован рели з Visual Studio 2013 Update 3. Одной из полезных фичей стала опция компилятора /Zo, которая облегчает отладку оптимизированного кода. Обратите внимание, что в ранней версии документации к Update-у эта опция была указана неверно: /Z0. Правильно использовать маленькую (латинскую :) ) 'o'. Сейчас все поправлено (во всяком случае в kb-шке). Но и это еще не все. Важно, чтобы был выключена опция "Edit and Continue" для native кода. Больше подробностей, а также магический ключ компиляции для Visual Studio 2012 здесь .

Новости про Visual Studio "14" CTP

Самая главная новость - это то, что Visual Studio "14" CTP  доступен для скачивания . Что интересного: C# and VB with the .NET Compiler Platform (" Roslyn ") ASP.NET vNext C++ 11/14 Список новшеств в С++ очень большой. Дублировать не буду, лучше почитать в оригинале Кроме собственно С++ грядут изменения в STL  и меняется модель работы с  CRT . Пока поддержку Windows XP в релизе VS "14" планируется оставить (комментарий Stephan T. Lavavej к этому посту ). Но времени еще много до релиза, могут и вырезать. А еще появилась тула для диагностики используемой памяти " Native Memory Diagnostic Tools for Visual Studio “14” CTP "

Parallel STL - Democratizing Parallelism in C++

Пока просто ссылки. Выглядит обещающе, надо поиграться. http://blogs.msdn.com/b/vcblog/archive/2014/04/16/parallel-stl-democratizing-parallelism-in-c.aspx https://parallelstl.codeplex.com/ http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2014/n3960.pdf

Проверь свои знания по С++

Небольшая подборка ресурсов для проверки знаний по С++ Тесты от CppQuiz  (основное внимание уделено стандарту, включая C++11) Inside C++ тест-драйв Тут больше про алгоритмы

Новое С++ сообщество и его очередная встреча

Список IT-сообществ пополнился.  Встречайте и присоединяйтесь:  C++ User Group, Russia   Очередная встреча пройдет в Москве, 15 февраля. Список докладов на данный момент (может измениться). 1. Григорий Демченко , Асинхронность и конкурентность на сопрограммах 2. Дмитpий Hecтepук , Высокопроизводительные вычисления на С/С++ 3. Антоний Полухин , Boost и C++11

Немного интересных ссылок про C++ из новостной ленты #1

Неплохой обзор текущего состояния дел в области "умных" указателей Для следующей статьи вам, возможно, потребуется освежить свои знания в С++11 и auto. Тут достаточно подробно и с примерами. Регулярные выражения в С++ 11. Статья не столько про std::regex, сколько про то, как использовать его красиво. Метапрограммирование на C++. Ухх... Делегаты на С++. Интересно в чем бенефит, в сравнении с std::function. Спросил у автора, посмотрим, что ответит. Очередная статья из серии GotW :  Thread Safety and Synchronization Онлайн-сервис для компиляции и проверки (запуска) кода, в том числе и a-la VC12, clang++ 3.2, g++ 4.7.3, C#, Python, SQL & etc. Также там можно найти страницу для проверки .Net Regex запросов.

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 во время отладки - отличная тема, теперь и для...

Молодые программисты, что с вами не так?

Эмоциональное. Навеяно очередным собеседованием. Я все понимаю: опыта нет, вакансия "программист-стажер С++", молодой максимализм, авантюризм. Но никак не могу понять, как, сделав тестовое задание (у нас оно "домашнее"), можно прийти на собеседование и заявить что не прочитал ни одной!!! книжки по С++ что не знаешь, что такое struct, class, virtual, sizeof что хочешь, чтобы тебя научили программировать что хочешь за все это еще и денег Пфуфф, мой мозг этого не понимает. Жесть какая то. Или я старомоден и где то есть такая халява? :( Update: в тему " Вредные советы джуниорам " ЗЫ подумалось, что "программистами" я их зря в заголовке обозвал.

Используйте mocks только, когда это действительно нужно

Мы уже знакомились с тем, что такое mock и как его использовать. Недавно в рубрике " Google Testing on the Toilet " появилась короткая, но  хорошая статья про то, какие минусы у mock'ов (достаточно очевидные для тех, кто уже с ними попрактиковался): тесты становятся непонятными; тесты становится трудно менять и поддерживать; с mock у вас меньше уверенности в том, что тесты действительно правильно проверяют тестируемый код. Одним из сигналов того, что вы увлеклись мокированием, является подмена mock'ом более чем двух классов.  Если для понимания того, что делает тест, вам приходится смотреть в тестируемый код - то это  еще один признак лишних mock'ов. Часто, лучше вместо mock'ов использовать эмуляторы систем, с которыми работает тестируемый код. Тесты при этом просто настраивают эту систему на нужную реакцию.

Анонс Visual Studio 2013

Еще не успели остыть обновленные на 2012 TFS'ы (а многие еще и не успели этого сделать), а MS уже анонсирует релиз Visual Studio 2013, превью которого будет доступно (уже есть ) в конце этого месяца на Build 2013. Релиз пока на конец этого года. Даже не знаю, что и сказать. Ведь еще не зарелизили  уже зарелизили Visual Studio 2012 Update 3, а надо уже смотреть чего там нового придумал MS. А действительно, что нового? Основной упор на ALM (application lifecycle management), продолжают двигать Agile-оснастку, обновлен Team Explorer и, ура, вернули Pending Changes Window. Добавлена поддержка .Net 4.5.1 И еще чуток всякой всячины. Немного подробностей здесь и здесь . Насчет изменений в компиляторе C++ никакой информации пока нет.  Уже есть :) Visual C++ Compiler November 2012 CTP  официально войдет в состав Visual Studio 2013. Windows XP будет поддерживаться как таргетная платформа. Достаточно подробный "what's new" для С++ разработчиков в новой студии....

Группировка С++ юнит-тестов в Visual Studio 2012 Test Explorer

Я уже писал про использование нового фреймворка для C++ unit-тестов в Visual Studio 2012. Продолжаем изучать новшества. На работе обсуждали, зачем ввели атрибуты ( модуля, класса, метода ). Точного ответа пока не нашел, но обнаружил, что группировка тестов Traits отлично с ними работает. Update: тут есть немного подробностей про использование Traits. И зачем нам теперь группировка по классам в Update 2 ? ;) Правда и здесь не обошлось без косяков. Куда же без них? :) Документация в MSDN утверждает что макросы объявления группы атрибутов модуля и класса имеют параметр. На самом деле они без параметров. И если с атрибутами классов из-за этого проблем не возникает (макрос объявляется внутри класса), то с модулем дела обстоят хуже. Макрос создания атрибутов модуля объявляет (и определяет) глобальную функцию __GetModuleMetadata, что при его использовании в нескольких файлах вызывает проблемы с линковкой. Проблему можно решить использованием namespace'ов, своего н...

Запуск С++ unit-тестов в Visual Studio 2012

Особенности Visual Studio 2012 C++ unit-test framework'а Собственно  описание . Ничего особенного (если не считать самого факта наличия в VS2012 библиотеки для тестирования native С++). Работает достаточно шустро. Недостатки в сравнении с Google C++ Testing Framework: 1. Нет Expect_Fail, что означает следующее. Если результат не соответствует ожиданию тест сразу останавливает работу, не проверяя другие условия если они есть. Подробнее о разнице assert vs expect можно посмотреть здесь . 2. Исключения только "ожидаемые" и без учета типов. 3. Во время запуска тестов результаты никуда не пишутся (в файл). Минорно, но факт. 4. Возможности по расширению в GTF намного больше. Опять же для mock по-любому придется использовать Google C++ Mocking Framework . 5. Если используете тестовое логирование , то результаты ищете в специальном окне Output "Tests": Для автоматизации использовать  VSTest.Console.exe . Можно группировать тесты. Подробности здесь . Дл...