// codeart.ru / Вопрос/Ответ / Изолируете ли вы сторонние библиотеки с помощью собственной обертки? Форум

Изолируете ли вы сторонние библиотеки с помощью собственной обертки? rss подписка

Автор: Evgeniy Sergeev

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

Во-первых, легко перейти на следующую версию сторонней библиотеки. После обновления достаточно прогнать тесты классов-оберток, чтобы быть уверенных в работоспособности новой версии.

Во-вторых, даже если после обновления библиотеки тесты перестали завершаться успешно, можно доработать класс-обертку, с учетом изменений произошедших в новой версии библиотеки. Без промежуточного класса для устранения неисправности пришлось бы «причесать» весь код.

В-третьих, интерфейсы своих классов всегда можно адаптировать под текущий проект, так чтобы имена методов выглядели наиболее информативно и естественно.

У данного подхода конечно есть и недостатки. Например, производительность. Это любимый аргумент любого программиста-психопата. Как будто они разрабатывают систему управления атомным реактором, работающую в реальном времени. :-) На мой взгляд, на оспаривание подобных аргументов не стоит тратит ни сил, ни времени.

Интересно узнать как вы организуете работу со сторонними библиотеками в своем проекте. Используете напрямую или оборачиваете в отдельный класс? Так же интересны аргументы «за» и «против».

  1. Конечно используем: например оборачиваю wideimage и htmlpurifier.
    Первая причина была написание auloader-а.

  2. dkrnl, тесты пишете? Или еще нет?

  3. А ты совсем уже не психопат? )

  4. Тормоз, да я уже фиг знает кто. Кайфа от профессии все меньше. Одна сплошная рутина.

  5. Понимаю. Что делать?

  6. А вообще у меня так волнами это находит. Иной раз увлечёшься, и классно. А иногда действительно рутина, и хоть вешайся.

Leave a Reply

« »