Java与设计模式 (笔记一)
初读这本书,感觉确实不错,作者很有实力。第三章提到软件的可维护性和可复用性,作者是借助java语言的机制,来讲解了面向对象设计模式的重要知识。
一个软件随着性能要求的变化而变得“腐烂”的原因有4个:过于僵硬,过于脆弱,复用率低,黏度过高。
僵硬:如果需要给一个系统增加一个功能,可能会牵涉到许多代码模块的更改,使得项目不敢增加新的功能。
脆弱:由于系统之间的模块存在着某种程度上的耦合,所以当改变系统中的某个功能时,可能会导致其他模块出现问题,这就说明系统过于脆弱了。
复用率低:所谓复用就是指,一个软件的组成部分,可以在同一项目的不同地方,或者是在另一个项目中重复使用。由于系统中模块之间的耦合过大,导致代码依赖很多,很难将它们分开,所以复用就成了难事。
黏度过高:一种改动可以以保存原始设计意图和设计框架的方式进行,也可以以破坏原始意图和框架的方式进行。一个系统总是使得采取第二种方法比第一种容易,那么就叫做黏度过高。
针对上述问题,我们设计的系统要具有可扩展性,灵活性,和可插入性。
可扩展性:新的系统功能可以很容易的加入到系统中去。
灵活性:可以允许代码修改平稳的发生,而不牵涉到别的代码。
可插入性:可以很容易的将一个类抽取出去,同时将一个具有同样接口的类插入进来。
此次整理就到这里,以后会继续更新,并且会涉及到Java具体代码。
相关文档:
首先得下载驱动程序到微软网站下载Microsoft SQL Server 2005 JDBC Driver 1.2
解压Microsoft SQL Server 2005 jdbc driver1.2.exe,把sqljdbc_1.1复制到%ProgramFiles%(如果系统在C盘则为C:\Program Files)。
设置 Classpath
JDBC 驱动程序并未包含在 Java SDK 中。因此,如果要使用该驱动程序,必须将 classpath ......
这短时间,完成了一个较为简单的系统 一个教育培训机构的信息管理系统,主要是通过不同的角色分配进入不同的界面,做相应的工作,因为在权限方面还没弄好,没有用到Ajax。角色有系统管理员,咨询主管,咨询师,市场专员,市场部主管,联系人,等等。因为当初写的时候,系统的扩展性还可以,所以你可以增加一个角色, ......
public class Test4 {
public int binarySearch(int[] items, int value){
int startIndex = 0;
int stopIndex = items.length - 1;
int middle = (int)Math.flo ......
Java程序员的推荐阅读书籍》
JavaEye (http://www.javaeye.com)
作为Java程序员来说,最痛苦的事情莫过于可以选择的范围太广,可以读的书太多,往往容易无所适从。我想就我自己读过的技术书籍中挑选出来一些,按照学习的先后顺序,推荐给大家,特别是那些想不断提高自己技术水平的Java程序员们。
一、Java编程入门类 ......