软件应该是可以扩展的,但是不可以修改的。对扩展都是开放的,模块式可以扩展来满足新的行为,我们可以改变模块的功能。OCP的好处是,尽可能的减少修改模块的次数和范围,从而提高代码的可维护性,复用性。比如操作系统的升级补丁,在修复bug的情况下,肯定是越小越小。如果说OCP做的不好,每次修改需要修改大量的文件,那就会导致补丁很大。对于修改是封闭的,在扩展模块的时候,不必改动源代码的二进制文件,不管是.o文件还是.dll文件都不用改动。问题的核心是怎么样改变了模块
系统 2019-08-12 01:32:46 2847
无助的时候,我曾读过N遍《金刚经》,讲到《金刚经》,我必须把爱因斯坦先拿来当我的档箭牌,不然,写这么个题目,我可能会被拍死:“如果世界上有一个宗教不但不与科学相违,而且每一次的科学新发现都能够验证她的观点,这就是佛教。”《爱因斯坦文集》,第一卷。“我不能设想真正的科学家会没有这样深挚的信仰。这情况可以用这样一个形象来比喻:科学没有宗教就象瘸子,宗教没有科学就象瞎子。”------------《爱因斯坦文集》,第三卷,商务印书馆,1979年,第182-183
系统 2019-08-29 23:41:37 2846
4月14日你也许已经有了一份无可挑剔的简历,很好的工作经历以及相貌堂堂,也许你是很多雇主都想要的人。但你却已经找工作近一年了,还是没有任何看得见的机会。TonyBeshara说,你需要一个端正的态度。Tony是一个猎头公司的老板,已经干这一行超过30多年了。在他最近一本著作《找到一个理想工作的终极方法》“TheJobSearchSolution:TheUltimateSystemforFindingaGreatJobNow!"中提到以下一些原因使你找不到工
系统 2019-08-29 23:07:36 2846
Javascript是一种由Netscape的LiveScript发展而来的原型化继承的面向对象的动态类型的区分大小写的客户端脚本语言,主要目的是为了解决服务器端语言,比如Perl,遗留的速度问题,为客户提供更流畅的浏览效果。当时服务端需要对数据进行验证,由于网络速度相当缓慢,只有28.8kbps,验证步骤浪费的时间太多。于是Netscape的浏览器Navigator加入了Javascript,提供了数据验证的基本功能。基本简介JavaScript是根据"
系统 2019-08-29 23:02:23 2846
最近一直在学习swing,根据网上流传甚广(链接在文末)的一个简易的中国象棋的游戏修改了一下,修正了其中的一些bug,在这里感谢程序的原作者。整理这个游戏主要是用于学习和交流,欢迎转载和修改。packageauthor.estone.chinesechess;//主类publicclassChess{publicstaticvoidmain(Stringargs[]){newChessMainFrame("中国象棋中國壹石頭");}}packageauth
系统 2019-08-29 22:46:38 2846
我是一名.net的初学者,比较熟的编程语言是C#,在公司跟老大做过几个项目,项目经验少得可怜,水平也就不见得能高到那里去了。可能有人会问,那为什么还要学Java呢,那会很浪费精力的,其实我也不想,但公司要转型,全公司都要转Java,我也没办法,只能跟大队了。经过一个星期多的摸索和比较,我为自己定了一个学习Java的方向和方法,不知道能不能行得通,贴出来,让大家提提意见。学习Java,我不会从头学起,因为语法,面向对象的基础知识,我想Java跟C#应该是差不
系统 2019-08-29 22:36:27 2846
相关链接:Java压缩技术(一)ZLibJava压缩技术(二)ZIP压缩——Java原生实现Java压缩技术(三)ZIP解压缩——Java原生实现Java压缩技术(四)GZIP——Java原生实现Java压缩技术(五)GZIP相关——浏览器解析Java压缩技术(六)BZIP2——Commons实现Java压缩技术(七)TAR——Commons实现GZIP常常用在linxu环境下,是一种非常简单的压缩算法。在Java实现API中,它仅仅包含两个实现类:GZI
系统 2019-08-29 22:31:49 2846
2006年底,Sun公司发布了JavaStandardEdition6(JavaSE6)的最终正式版,代号Mustang(野马)。跟Tiger(JavaSE5)相比,Mustang在性能方面有了不错的提升。与Tiger在API库方面的大幅度加强相比,虽然Mustang在API库方面的新特性显得不太多,但是也提供了许多实用和方便的功能:在脚本,WebService,XML,编译器API,数据库,JMX,网络和Instrumentation方面都有不错的新特性
系统 2019-08-12 09:29:42 2846
下面是MartinSalia外科医生的遗像:11月17日,埃博拉重病患者MartinSalia外科医生死了。请见:EbolapatientDr.MartinSaliadiesinOmaha。11月15日,外科大夫MartinSalia从塞拉利昂返回美国求治时,在电话中对妻子说:我爱你(Iloveyou)!妻子在电话中马上回答他说:你是我的一切(Myeverything)!这是他与妻子最后的对话。我没有与黑人兄弟谈话、沟通的经历,不知道他们也有丰富的感情生活
系统 2019-08-12 01:51:53 2846
JSP+Tomcat数据库访问作者:刘志远在一般的Web项目开发中,对数据库的访问是必不可少的,本文主要介绍两种在使用Tomcat作为Web服务的JSP开发中访问数据库的方法,希望能对刚接触JSP开发的朋友有所帮助。用过.NET平台的朋友应该知道,项目中需要访问数据库时,直接导入相应的数据库命名空间,写个数据库连接字符串(如数据库名、用户名、密码等)后,则可以很容易的获得数据库连接对象。其实Java中访问数据库也差不多是那样,但这对于刚接触Java开发环境
系统 2019-08-12 01:32:27 2846