Для написания эффективных и корректных многопоточных приложений очень важно знать какие существуют механизмы синхронизации памяти между потоками исполнения, какие гарантии предоставляют элементы многопоточного программирования, такие как мьютекс, join потока и другие. Особенно это касается модели памяти C++, которая была создана сложнойЧитать полностью »
Рубрика «Программирование» - 151
std::atomic. Модель памяти C++ в примерах
2020-09-07 в 4:31, admin, рубрики: c++, атомики, многопоточность, ПрограммированиеВредные советы: как заставить программиста работать лучше
2020-09-06 в 15:53, admin, рубрики: вредные советы, никто не читает теги, Программирование, управление персоналом, юморКаждый из нас хотя бы раз в жизни видел программиста (сами себя они предпочитают называть разработчиками). Как правило, программисты довольно замкнутые, очень пугливые и любят подолгу смотреть в монитор. Они – либо следующая ступень эволюции человечества, либо предыдущая. Они плохо умеют разговаривать, но очень хорошо понимают человеческую речь и компьютерные сигналы. В этой статье я хочу рассказать, как заставить ваших разработчиков работать лучше, при этом не доставляя им никакого дискомфорта и не пугая их. А для этого вам необходимо будет запомнить несколько правил.
Правило первое – будьте рациональны
Как начать писать микросервис на Spring Boot, чтобы потом не болела голова
2020-09-06 в 9:21, admin, рубрики: java, spring boot, ПрограммированиеПривет! Меня зовут Женя, я Java-разработчик в Usetech, в последнее время много работаю с микросервисной архитектурой, и в этой статье хотела бы поделиться некоторыми моментами, на которые может быть полезно обратить внимание, когда вы пишете новый микросервис на Spring Boot.
Опытные разработчики могут счесть приведенные рекомендации очевидными, однако все они взяты из практики работы над реальными проектами.
Жестокая правда будней программиста: 8 наблюдений
2020-09-04 в 13:16, admin, рубрики: Блог компании RUVDS.com, карьера, Карьера в IT-индустрии, Программирование, разработкаНесколько лет я писал код, а мне за это платили. За это время я узнал о некоторых неприятных вещах, касающихся работы программиста. Мне всегда хотелось написать об этом. Надеюсь, вы понимаете, что я рассказываю вам всё это не для того, чтобы вас расстроить. Я считаю эту статью особым нигилистическим подарком для всех, кто готов такой подарок принять.
Материал я построил так: сначала, в заголовке раздела, я кратко описываю сделанное мной неприятное наблюдение, потом привожу истории из жизни, обзор ситуации, рассказываю о том, что с ней связано, и завершаю раздел краткими выводами. Читая этот материал, помните о том, что в мире существует баланс между белым и чёрным, между хорошим и плохим.
Читать полностью »
D&D-классы для разработчиков
2020-09-04 в 8:17, admin, рубрики: d&d, Блог компании ДомКлик, ДомКлик, Карьера в IT-индустрии, Программирование, управление персоналом, Читальный залВам кажется, что разработка ПО похожа на большую и плохо структурированную RPG, хотя никто не признаёт этого на собеседованиях? Тогда эта классификация вам понравится.

Проверка QEMU с помощью PVS-Studio
2020-09-04 в 6:53, admin, рубрики: C, c++, open source, programming, qemu, virtual machine, Блог компании PVS-Studio, Программирование, С++
QEMU – достаточно известное приложение для эмуляции. Статический анализ может помочь разработчикам таких сложных проектов, как QEMU, отлавливать ошибки на раннем этапе и в целом повысить его качество и надёжность. В этой статье будет проверен исходный код приложения QEMU на потенциальные уязвимости и ошибки с помощью инструмента статического анализа PVS-Studio.
Читать полностью »
В рамках описания предметной области распространены понятия с ограниченным числом значений. Для этого лучше всего подходят перечисления. В PHP нет специальных конструкций для описания перечисления, однако их можно имитировать при помощи объектно-ориентированного подхода.
Определяем пульс по вебкамере в 50 строчек кода
2020-09-01 в 17:47, admin, рубрики: python, Алгоритмы, Лайфхаки для гиков, Научно-популярное, Программирование, пульсометрПривет.
Однажды мне попалось описание приложения для Android, которое определяло пульс по камере телефона, просто по общей картинке. Камера не прикладывалась к пальцу, не просвечивалась светодиодом. Интересный момент был в том, что ревьюеры не поверили в возможность такого определения пульса, и приложение было отклонено. Чем дело кончилось у автора программы, не знаю, но стало интересно проверить, возможно ли это.
Для тех кому интересно что получилось, продолжение под катом.
Разумеется, я не буду делать приложение под Android, гораздо проще проверить идею на языке Python.
Получаем данные с камеры
Я десять лет страдал от ужасных архитектур в C# приложениях — и вот нашел, как их исправить
2020-09-01 в 14:01, admin, рубрики: .net, .net core, ASP, C#, reinforced, архитектура приложений, базы данных, Программирование, Тестирование IT-систем
Я второй десяток лет участвую в разработке приложений для бизнеса на .NET и каждый раз вижу одни и те же проблемы — быдлокод и беспорядок. Месиво из сервисов, UoW, DTO-шек, классов-хелперов. В иных местах и прямой доступ в базу данных руками, логика в статических классах, километровые портянки конфигурации IoC.
Когда я был молодым и резвым мидлом — я тоже так писал. Потом бил кулаком в стену с криками: "Хватит! В следующий раз сделаю по-другому". Следующий раз действительно начинался "по-другому" — с холодной головой и строгим подходом к архитектуре — а на выходе все равно получалась та же субстанция, лучше на пару миллиметров.
Однако, эволюция — беспощадная штука: моя последняя система показалась мне более-менее близкой к идеалу. Сложность не сильно росла, скорость разработки не падала довольно долго, в систему худо-бедно въезжают новые сотрудники. Эти результаты я взял за основу, улучшил и теперь анонсирую вам свою новую разработку: Reinforced.Tecture.
Вред хранимых процедур
2020-09-01 в 9:12, admin, рубрики: postgresql, sql, Блог компании RUVDS.com, Программирование, процедуры, разработка, Разработка веб-сайтов
В чат подкаста «Цинковый прод» скинули статью о том, как некие ребята перенесли всю бизнес-логику в хранимые процедуры на языке pl/pgsql. И так как у статьи было много плюсов, то значит, есть люди, а может быть, их даже большинство, которые положительно восприняли такой рефакторинг.
Я не буду растекаться мыслью по древу, а сразу накидаю кучку минусов использования хранимых процедур.
Читать полностью »

