浏览 1310 次
锁定老帖子 主题:伟大的抽象/具体二分法
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2009-05-23
最后修改:2009-05-26
面向对象设计中有一条原则叫做依赖倒置,意思就是要依赖抽象,而不是依赖具体。这让我联想到了"抽象/具体二分法"这个命题,当然我只能感慨,真TMD 伟大。 接口/实现是二分法的一种体现,这种做法已经为我们设计时解耦合做出了巨大的贡献。 当然,真正伟大的还是规范/实现这对玩意儿。 首先讲讲Java, JVM 本身是一组规范(当然很多地方也用JVM 来表示JVM 的实现),而其实现有IBM JVM,SUN Hotspot JVM,Oracle JRocket 等。 J2EE 也是一组规范,其实现有IBM Websphere,Oracle Weblogic,Redhat Jboss... 想想Weblogic 和Jboss 当初都是SUN 公司里面一个跑出来一个大牛,搞出一个J2EE 实现,最终成就大业,如今SUN 已是昨日黄花,不禁唏嘘。当然我相信Java 是不会倒下的。 再说说我们的操作系统, POSIX 标准簇应该如雷贯耳吧,UNIX 和各式Linux 都是它的实现。 还有我们的数据库, SQL 规范应该也是如雷贯耳吧,其实现就不得了了,DB2,Oracle,MS SQL... ...
这本身还不足以让人感慨,最重要的是,上面讲了这么多的实现,如果大家不是遵循同样的规范,很难想象现在的世界是个什么样子,可能软件开发人员一半的时间都要去学工具了。而现在,相对来说,大家还是活的很惬意的,
这些为人类节省了多少的智力成本啊,伟大都不足以形容... ... 这个结论还有一个反例支持。那便是W3C 和浏览器的实现。想想多浏览器的支持曾经是多少人的噩梦,好在最近有了点转机。 顺便推荐下Chrome 浏览器,V2 正式版最近发布了,这玩意儿真的不错,一贯的简洁。还有些特性蛮有趣的,比如全屏浏览(F11),不妨试试。 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |