Библиотека C/C++ разработчика | cpp, boost, qt
20.9K subscribers
1.59K photos
44 videos
16 files
3.76K links
Все самое полезное для плюсовика и сишника в одном канале.

По рекламе: @proglib_adv

Учиться у нас: https://proglib.io/w/d6cd2932

Для обратной связи: @proglibrary_feeedback_bot

РКН: https://gosuslugi.ru/snet/67a5bac324c8ba6dcaa1ad17
加入频道
🏗 7 архитектурных паттернов, которые должен знать каждый программист

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

➡️ В статье вас ждёт

— Circuit Breaker — как не сжечь систему повторными ошибками
— Event Sourcing — зачем сохранять историю изменений вместо текущего состояния
— SideCar — как отделить логику от инфраструктуры
— CQRS — почему чтение и запись лучше разводить по разным моделям
— Rate Limiting — как защититься от перегрузки
— Strangler Fig — пошаговая миграция без боли
— Health Endpoint Monitoring — как делать доступный мониторинг состояния системы

Это не базовые темы, но если вы хотите прокачаться и разбираться в архитектуре — самое время углубиться.

🔵 Для полного понимания Архитектуры, забирайте наш курс → «Архитектуры и шаблоны проектирования»

📎 Статья

Proglib Academy #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
⚡️ Фича дня: условный оператор с инициализацией

Часто перед условным оператором нужно объявить временную переменную, что загромождает область видимости и увеличивает вероятность ошибок.

Инициализация переменных прямо в условии if/switch (C++17) позволяет ограничить область видимости только блоком условия.

🔴 До:
auto it = map.find(key);
if (it != map.end()) {
// Используем it->second
}


🟢 После:
if (auto it = map.find(key); it != map.end()) {
// Используем it->second
}


Примеры использования:

- Поиск в контейнерах с проверкой результата
- Вызов функций с проверкой возвращаемого значения
- Инициализация мьютексов с последующей блокировкой

💡 Как думаете, улучшает ли это читаемость кода?

Библиотека C/C++ разработчика #буст