java - 包装还是不包装开源框架?

标签 java frameworks

Possible Duplicate:
Should you wrap 3rd party libraries that you adopt into your project?

我正在使用mail.jar,一个开源API来用java发送邮件。

我想知道是否应该将其调用包装到我自己的框架中,如下所示:

DedicatedFramework.sendMail(subject, body, recipientList);

然后,这个专用框架将对 mail.jar 进行必要的调用。

这个想法是,如果明天我用一个不赞成/更改方法的新版本替换 mail.jar,那么我就会减少耦合。

另一方面,我添加锅炉代码只是为了“隐藏”框架。

你们对此做了什么?

当然,它可以是除邮件之外的其他框架:图片管理、jdbcTemplate、GoogleCollections ...

最佳答案

没有。

知道明天必须使用不同的邮件库吗?有可能吗?我对此表示怀疑。仅仅为了“也许有一天”而进行的包装是最糟糕的 YAGNI。

另一方面,如果您的 sendMail() 方法执行的操作在您发送邮件时会重复执行,那么它就不是包装器,而是一个有用的抽象。

关于java - 包装还是不包装开源框架?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8592556/

相关文章:

java - 是否可以通过命令行将可选参数 testInincludes 或 testExcludes 传递给 maven 编译插件?

php - CakePHP 2.1 初学者教程?

html - 设计良好的 Web 应用程序 GUI 框架?

iphone - 到底什么是私有(private) API,为什么 Apple 会拒绝使用 iOS 应用程序?

java - 让 Java 能够从文本文件中读取一行并打印出来

java - 算法,从包含 n 个元素的列表中查找组合

java - 为什么当窗口切换时java程序不继续执行操作?

java - 在 JAVA 中从文件中高性能删除字符串

带有嵌套嵌入式框架的 iOS 8+ 框架

ios - podfile 中单一目标的多平台支持