Как стать автором
Обновить
2
0
Aliaksei Radzevich @aradzevich

ex-Yandex | C++, .Net | High load, Low latency

Отправить сообщение

Compile Time Dependency Injection в С++: как обуздать зависимости не прибегая к позднему связыванию

Уровень сложностиСредний
Время на прочтение26 мин
Количество просмотров7.9K

Начав свою карьеру в качестве C# разработчика, я постоянно сталкивался с использованием техники внедрения зависимостей (Dependency Injection). За то время, что я работаю с C++, я не заметил здесь такого же широкого распространения этой идеи.

В то же время мне показалась весьма интересной такая возможность C++, как написание кода, который частично либо полностью может быть выполнен на этапе компиляции.

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

Читать далее
Всего голосов 14: ↑14 и ↓0+14
Комментарии19

Информация

В рейтинге
Не участвует
Откуда
Беларусь
Зарегистрирован
Активность

Специализация

Backend Developer, Software Architect
Senior
От 6 000 $
C++
C#
Distributed calculations
Microservices
OOP
Linux
Multiple thread
Database
High-loaded systems
Designing application architecture