惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

WordPress大学
WordPress大学
A
About on SuperTechFans
小众软件
小众软件
Hugging Face - Blog
Hugging Face - Blog
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
博客园 - 叶小钗
博客园 - 聂微东
博客园 - Franky
Apple Machine Learning Research
Apple Machine Learning Research
罗磊的独立博客
量子位
博客园 - 三生石上(FineUI控件)
Recent Announcements
Recent Announcements
The GitHub Blog
The GitHub Blog
B
Blog RSS Feed
T
The Blog of Author Tim Ferriss
GbyAI
GbyAI
云风的 BLOG
云风的 BLOG
Last Week in AI
Last Week in AI
宝玉的分享
宝玉的分享
B
Blog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
Stack Overflow Blog
Stack Overflow Blog
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC

博客园 - Tim.Tang

个人简历常用词汇(zt) 听懂新闻英语的十大方法(zt) 传说中的100句英语可以帮你背7000单词(zt) Popular Verbal English Attributes of C Sharp Basketball English Popular English Sentences 今天中午的时候公司里的一个老大跟我说给我争取一个去参加候捷设计模式培训的名额 近期关于“软件架构”的一个看点(zt) 动态控件的状态问题的分析 JavaScript事件串联之土办法 计算机科学经典论文(转载) 一个IT项目经理的心情日记(转载) 怎样做项目计划(转载) 微软资深经理人的项目管理经验(转载) 软件项目过程管理经验(转载) 项目管理过程中要注意的一些问题 如何在应用Object DataSource和Typed DataSet构建的应用程序中使用水晶报表 如果应用Object DataSource和Typed DataSet快速构建三层结构的B/S应用程序 - 原创
spring 与 guice 的区别好玩的好法(转)
Tim.Tang · 2007-04-14 · via 博客园 - Tim.Tang

看下边对于不同社会形态下一个人(java对象,调用者)需要一把斧子(java对象,被调用者)的例子:
(1)原始社会时,劳动社会基本没有分工,需要斧子的人(调用者)只好自己去磨一把斧子,每个人拥有自己的斧子,如果把大家的石斧改为铁斧,需要每个人都要学会磨铁斧的本领,工作效率极低。
对应Java里的情形是:java程序里的调用者new一个被调用者的实例。类耦合度极高,修改维护烦琐,效率极低。
(2)工业社会时,工厂出现,斧子不再由普通人完成,而由工厂生产,当人们需要斧子的时候,可以到工厂购买斧子,无需关心斧子是怎么制造出来的,如果废弃铁斧为钢斧,只需改变工厂的制造工艺即可,制作工艺是工厂决定的,工厂生产什么斧子,工人们就得用什么斧子。
 对应的Java里的情形是:Java程序的调用者可以以来简单工厂创建被调用者,变化点被隔离到了简单工厂里,虽然耦合度降低,但是调用者会和工厂耦合,而且需要定位自己的工厂。
(3)近代工业社会,工厂蓬勃发展,人们需要什么斧子,只需要提供一个斧子图形,商家会按照你提供的图形将你的斧子订做好,送上门。
对应Java里的情形:spring的依赖注入
(4)进入按需要分配社会,信息进入现代化,人们不再去工厂购买斧子,不再拘泥于需要什么斧子事先画好什么样的图形,只需要打个电话,描述一下需要什么类型的斧子,或许想打造一个物美价廉的斧子,商家会根据市场零件的价格,计算出最优制作工艺,打造最适合的斧子送过来,更加信息化,更加人性化。
 对应Java里的情形:基于描述的注入,动态的,灵活简单的注入,如:Guice。

-------------------------------------------------------------------------------------------------------------------

很多时候使用起来越简单的东西,在实际的应用中往往会受到各种各样的约束。就像用.NET和Java做项目一样,现在的.NET的一些快速开发模式开始用起来不错,可用着用着就觉得很受它的约束。还有现在MS发布的AJAX1.0简单的使用下它的那些AjaxToolkit中的东西感觉不错,可一旦大量应用到实际项目中出现问题时你就郁闷吧。