Архив рубрики ‘C++’

Пара вещей, которые должен знать игровой программист

В std::move никто никуда не двигается В undefined behavior поведение вполне себе определено, просто крашит игру В GameObject нет ни игры ни объекта, а только баги и куча антипаттернов Memory leak detector сам протекает В PhysicsEngine физики столько же, сколько в сказке про Колобка Из 8 часов работы 6 уходят на попытку собрать билд после […]

20 лет работы над одним продуктом

В феврале 2005 я выпустил первую версию своей программы PerfectTablePlan, предназначенной для планирования рассадки гостей за столами. В этом месяце ей стукнуло уже 20 лет. Тогда это был другой мир, мир Windows, условно-бесплатного ПО и CD-дисков. С тех пор очень многое изменилось, но PerfectTablePlan на сегодня уже достигла версии 7 и чувствует себя уверенно.

Game++. Building arcs

Прежде чем рассказать про архитектуры игровых движков, я подумал, что будет полезно немного рассказать о том, как я понимаю архитектуру ПО и как это связано с играми. Во-первых они (архитектуры) есть, чтобы бы там не врали про игрострой. Во-вторых их оказывается больше одной. Это, возможно, поможет вам понять почему остальные статьи написаны в таком порядке, […]

Гайд по подготовке к собеседованию для Backend-разработчиков

Тимур Мухитдинов, Senior Software Development Engineer в Booking.com, поделился своими советами по подготовке к собеседованию на позицию backend‑разработчика.

Простая ошибка при кодировании — не значит нестрашная ошибка

Популяризируя статический анализатор кода PVS-Studio, мы обычно пишем статьи для программистов. Однако, на некоторые вещи программисты смотрят одностороннее. Именно поэтому и существуют менеджеры программных проектов, которые могут управлять процессом развития проекта направлять его в нужное русло. Я решил написать несколько статей, целевой аудиторией которых являются менеджеры программных проектов. Эти статьи помогут им лучше ориентироваться в […]

Статья о статическом анализе кода для менеджеров, которую не стоит читать программистам

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

Новая услуга: регулярный аудит Си/Си++ кода

До недавнего времени мы занимались исключительно развитием и продажей продукта PVS-Studio. Потом мы подумали и решили предлагать новую услугу: регулярный аудит кода. Про неё я и расскажу. Статья предназначена для менеджеров и тимлидов. Дабы не портить себе настроение и не минусовать, программистов прошу статью не читать.

Тестовое задание C++, функтор для сортировки

Для поиска талантливых программистов написал тестовое задание C++. Вкратце, сложность задачи состоит в передачи дополнительных данных в функцию сравнения, которая используется сортировкой из стандартной библиотеки. Из википедии: Функциональный объект (англ. function object), так же функтор, функционал и функционоид — распространённая в программировании конструкция, позволяющая использовать объект как функцию. Часто используется как callback, делегат, либо как […]

Как ускорить сборку 1000 VisualStudio C++ проектов

Добрый день, уважаемые хабраюзеры. Я решил написать этот топик, чтобы не не копировать мой комментарий к данному посту. Здесь я просто опишу наше решение До изменений: Полная сборка (clean) занимала около 4.5 часов Инкрементальная сборка (continuous) занимала около 30 минут. После изменений: Полная сборка — около 40 минут. Инкрементальная сборка — 2-3 минуты