摘要:中国的政治经济格局正在酝酿着一场变革,而作为高新技术产业的软件行业,必将成为这场变革的先锋队成员。这里我不想对政治经济的变革做什么展望,仅仅对软件行业的未来谈谈自己的看法。
当前软件行业人士普遍存在两种错误观点:第一种观点认为我们应该培养软件蓝领,向印度学习,依靠外包和出口求得进步;第二种观点认为,我们缺乏自身的核心技术,应该要重视底层技术,力求做研究型开发,做出自己的pc,乃至操作系统等等。第......
摘要:条款50:让你自己熟悉有关stl的网站
因特网充满了stl的信息。用你最喜欢的搜索引擎寻找“stl”,它一定会返回几百个链接,其中有一些可能实际上是相关的。不过,对于大多数stl程序员,没有必要搜寻。下列网站应该要提升到几乎每个人的最常使用列表的顶端:
sgi stl网站,http://www.sgi.com/tech/stl/。
stlport网站,http......
IOC和Dependency Injection
介绍
【程序编程相关:
BBIagent】
其实ioc模式并不是什么新的东西,它是一种很普遍的概念(或者说结构),gof中的template method 就是ioc的结构.顾名思义,ioc即控制反转.著名的好莱坞原则:“don’t call us, we will call you”,以及robert c. martin在其敏捷软件开发中所描述的依赖倒置原则(dependency inversion principle, dip)都是这一思想的体现.dependency injection是martin flower对ioc模式的一种扩展的解释,下面我们从一个简单的实例开始. 【推荐阅读:
会员管理系统中会员类的实现】
如下的类图,并写下了代码. 【扩展信息:
ASP 调用 ORACLE存储过程并返回】
考虑一个button来控制lamp的开与关.
public class button {
private lamp lnklamp;
public void poll() {
lnklamp.turnon();
}
}
但是马上发现这个设计的问题,button类直接依赖于lamp类,这个依赖关系意味着当lamp类修改时,button类会受到影响.此外,想重用button类来控制类似与lamp的另外一个对象则是不可能的.即button控制lamp,并且只能控制lamp.
显然,我违反了“高层模块不应该依赖于底层模块,两者都应该依赖于抽象;抽象不应该依赖于具体实现,细节应该依赖于抽象” 这一原则(dip原则).
考虑到上述问题,自然地想到应该抽象出一个接口,来消除button对lamp的依赖,于是设计如下:
...
下一页 摘要: 白领 在上个世纪的一千九百九十八年的春节前的某天傍晚,北京的隆冬傍晚,华灯初上,春节前是北京一年里最冷的日子,东三环边上的长城喜来登饭店的大宴会厅里,却洋溢着融融春意,偌大的大宴会厅里百十张大圆桌边,已经坐满了人,有说有笑,这些辛苦了一年的白领员工们,今晚正在参加公司一年一度的春节新年宴会.这是一家老牌的跨国巨型企业,进入中国已经百多年了,尽管如此,她的大多数manager仍是外国人.晚宴上,不......