我最近在大学的一门课程中学习了关于Guice的知识,并且看到了Google I/O video about it。在视频中,他们声称在每个Google项目中都使用它,包括Wave等。我想知道- Guice真的那么普遍吗?它真的是Java程序员的必备知识吗?我应该总是使用它而不是工厂吗?
谢谢
发布于 2010-07-17 05:06:06
真的那么普遍吗?它真的是Java程序员的必备知识吗?
在谷歌之外--不,不完全是。我并不是说它不是一个好产品,只是现在它似乎没有得到广泛的应用。还有其他更成熟的框架可以提供依赖注入,比如Spring或EJB。主要的区别是Guice只做依赖注入。
我应该总是使用它而不是工厂吗?
当然不是。依赖注入是一个有用的模式,但与所有有用的工具一样,使用它也有正确和错误的时机。
发布于 2010-07-17 05:04:37
Guice是一个依赖注入框架。当使用Java时,你一定要考虑依赖注入框架(DI)。DI可以为您节省大量(Web)安全/身份验证、事务管理、日志记录、数据库访问的样板代码,并使代码更简洁。
或者,您可以考虑Spring。Guice是,或者至少以前更容易使用,因为它不太依赖XML,但Spring在最新版本(使用注释、javaconfig等)之后迎头赶上了。
好吧,不管怎样,在你自己的工厂代码,事务样板代码(transaction.start .提交,最后..等)、单例(如静态getInstance方法)等。
https://stackoverflow.com/questions/3268779
复制相似问题