Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Общие вопросы > Имеет ли смысл делать классы-обертки?


Автор: LeonidPr 25.6.2019, 11:45
Всем привет, задумался над таким вопросом: во многих проектах разработчики делают обертки над различными 
низкоуровневыми понятиями для обеспечения кросплатформенности и универсальности.
Т.е. в проекте есть что-то вроде MyMutexImplMySemaphoreImpl, MyThreadImpl и т.п.
При этом может подтягиваться соответствующая имплементация в зависимости от платформы, на которой идет сборка (Pimpl в помощь)
Так вот в последних стандартах C++ многие вещи подтянули в стандартную библиотеку (<atomic><mutex><thread>) и т.д.
Возник вопрос - стоит ли делать в новых проектах обертки над такого рода STL классами?
С одной стороны вижу смысл в этом в целях обеспечения универсальности, т.к. не все есть в STL, что-то будет браться из других библиотек, или вообще писаться непосредственно через API платформы.
И дабы в дальнейшем не думать какой примитив использовать - свой или из STL стоит сделать низкоуровневый слой с универсальным интерфейсом и стандартизированными (в рамках проекта) названиями для классов.
С другой стороны - есть же здравый предел, не делать же обертки для STL контейнеров или других стандартных типов.
Интересно послушать мнение других по этому вопросу.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)