C++

  • ХабрахабрФото Просто о сложном — пишем тесты с Google C++ Testing Framework (GTest, GMock)

    Просто о сложном — пишем тесты с Google C++ Testing Framework (GTest, GMock)

    Всем привет. Недавно по работе возникла потребность разобраться с созданием новых тестов на GTest/GMock. Конкретно мой вопрос был связан с его конструкциями типа EXPECT_CALL и моками - что это за магические штуки и как они работают? Однако, по мере изучения выяснились и другие интересные вещи, с которыми хотел бы поделиться. Первым делом ответы стал искать на Хабре. Здесь зачастую авторы…

    Читать далее »
  • ХабрахабрФото Как ускорить Python с помощью C-расширений

    Как ускорить Python с помощью C-расширений

    Привет, Хабр! Я – Игорь Алимов, ведущий разработчик группы Python в МТС Digital, работаю над продуктами Smart Rollout и B2B-портал. В этой статье я расскажу о том, как писать быстрый код на Python с использованием C-расширений и победить GIL. На мысли об ускорении Python меня натолкнула статья о языках программирования будущего. Список перспективных (по мнению автора) языков я приводить не…

    Читать далее »
  • ХабрахабрФото Гибкая индексация элементов в контейнере на С++ и при чём тут Boost.MultiIndex

    Гибкая индексация элементов в контейнере на С++ и при чём тут Boost.MultiIndex

    Мотивация Предположим, что ты - С++ программист и тебе нужно создать справочник. Ну а точнее, рассмотрим один из этапов, когда тебе нужно отобразить одно множество на другое. В процессе поиска решения ты узнаешь про хэш-таблицы, деревья, и делаешь самую наивную реализацию. После чего, при усложнении стандартного примера, начинаешь задаваться вопросами: Как сделать ключом поле класса? Что, если правил для индексации(способов…

    Читать далее »
  • ХабрахабрФото Генерация лабиринтов: алгоритм Эллера

    Генерация лабиринтов: алгоритм Эллера

    Вступление Как оказалось, что тема генерации лабиринтов не сильно раскрывается в русско- и англоязычном сообществе. На хабре существует одна статья Алгоритм Эллера для генерации лабиринтов. Статья, является переводом англоязычной статьи с описанием алгоритма по шагам. В своей реализации, я опирался на алгоритм из статьи. В процессе я столкнулся с трудностями и недопонимаем алгоритма. Поэтому я решил подробно разобрать алгоритм Эллера…

    Читать далее »
  • ХабрахабрФото [Перевод] Минимальные API в .NET 6

    [Перевод] Минимальные API в .NET 6

    Создание REST API является основной частью многих проектов разработки. Выбор для создания таких проектов широк, но если вы разработчик на C#, варианты будут весьма ограничены. API на основе контроллеров были наиболее распространенными в течение долгого времени, но . NET 6 меняет эту ситуацию, предлагая новую возможность.  Как это произошло? Присоединение компьютеров было проблемой с первых шагов распределенных вычислений около пятидесяти…

    Читать далее »
  • ХабрахабрФото [recovery mode] А давайте это отфильтруем

    [recovery mode] А давайте это отфильтруем

    Стилизация элементов пользовательского интерфейса в экосистеме .net/WPF «позволяет разработчикам и дизайнерам создавать визуально привлекательные эффекты и согласованный внешний вид своих продуктов» [docs.microsoft.com] На первый взгляд, это аналогично разделению веб-страниц на семантическое содержание в HTML и  оформление в CSS. Однако, стилизация в WPF является гораздо более мощным инструментом, позволяющим существенно обогатить интерфейс программы (UI) без непосредственного изменения кода приложения. Однажды потребовалось…

    Читать далее »
  • ХабрахабрФото .NET 6: PriorityQueue

    .NET 6: PriorityQueue

    В . NET 6 появилась новая коллекция — PriorityQueue<TElement,TPriority>. До этого очереди с приоритетами уже были в . NET, но только в виде внутренних классов — они использовались под капотом разных механизмов в WPF, Rx. NET и в других частях фреймворка.  Но в . NET 6 PriorityQueue стала новой коллекцией, которой теперь можно пользоваться из клиентского кода. Давайте посмотрим, что предлагает…

    Читать далее »
  • ХабрахабрФото Как работать с Makefile-проектами в среде CLion

    Как работать с Makefile-проектами в среде CLion

    За последние несколько лет мне пришлось столкнуться с множеством вопросов, которые были сформулированы примерно так: "мой проект не открывается в среде CLion". В свою очередь, это приводило к необходимости из раза в раз объяснять разным людям примерно одно и то же. Статья имеет целью сохранить тот опыт, который был накоплен в процессе анализа десятков разных проектов. Предполагается, что официальная документация…

    Читать далее »
  • СофтФото [Перевод] Как помочь компилятору повысить быстродействие вашей программы

    [Перевод] Как помочь компилятору повысить быстродействие вашей программы

    Современные компиляторы весьма далеко продвинулись в области оптимизации ПО. Но иногда им бывает трудно подобрать наилучший способ оптимизации. К счастью, мы можем помочь им в этом выборе. Под катом старший разработчик ПО компании Google, Minhaz A V*, рассказывает об оптимизации производительности кода. Менее чем за час работы автор ускорил код на 18%, добавив в него всего пару строк. Несмотря на…

    Читать далее »
  • ХабрахабрФото Как я игрульку создал: ч. 1 Предыстория и идея, ч. 2 Игрок и сборщик уровней

    Как я игрульку создал: ч. 1 Предыстория и идея, ч. 2 Игрок и сборщик уровней

    Часть 1. Предыстория и идея Здравствуй, Хабр! Я хочу поделиться опытом в создании одной гиперказуалки. Сам я, правда, ещё совсем зелен и юн на этой тернистой тропе игроделания, но может кому-то станет интересно и он прочтёт цикл этих статей. Самого кода здесь не будет, а если и будет, то в очень мизерных количествах, в связи с чем вряд-ли эти статьи…

    Читать далее »


Кнопка «Наверх»