Das ist subjektiv, hängt aber auch von der Bibliothek ab.
Zum Beispiel haben log4net oder NHibernate streng Interface-basierte API's . Es besteht keine Notwendigkeit, sie zu verpacken. Es gibt andere Bibliotheken, die Ihre Klassen schwer testbar machen, wenn Sie keine Schnittstellen dazwischen haben. Dort könnte es ratsam sein, eine saubere Schnittstelle zu schreiben.
Manchmal ist es ratsam, nur einen kleinen Teil des Codes auf APIs zugreifen zu lassen, wie zum Beispiel NHibernate oder eine GUI-Bibliothek. (Hinweis: Dies ist kein Wrapping, sondern das Erstellen Abstraktionsschichten .) Auf der anderen Seite macht es keinen Sinn, den Zugriff auf log4net-Aufrufe zu reduzieren, da diese in der gesamten Anwendung verwendet werden.
log4net ist wahrscheinlich ein gutes Beispiel dafür, dass Wrapping einfach zu viel des Guten ist. Einige Leute leiden unter "Wrappitis", einem Anti-Muster (manchmal auch als "Wolle in Baumwolle wickeln" ) und produziert einfach mehr Arbeit. Log4net hat eine so einfache API und ist in hohem Maße anpassbar, sie machten es besser als Ihr Wrapper wahrscheinlich sein wird.
Sie werden feststellen, dass Sie eine Bibliothek nicht einfach mit einem anderen Produkt umtauschen können. Auch die Aktualisierung auf neuere Versionen wird nicht einfacher, sondern Sie müssen Ihren Wrapper umsonst aktualisieren.