- 浏览: 97818 次
- 性别:
- 来自: 北京
最新评论
-
wenjinglian:
确实是这个错误,新版本svn插件好像不会出现此问题了
RA layer request failed svn -
meng22623:
good!问题解决了
mysql SQL Error: 1146, SQLState: 42S02 (linux) -
lbird:
牛逼!膜拜大神,这个问题纠结了我半天啊,终于在您这儿解决了
...
解决IE6下float right 换行bug方案(转) -
boyssheng:
快乐的奔跑 写道sqlplus sys/password as ...
安装Oracle 10g忘记SYS密码(转载) -
快乐的奔跑:
sqlplus sys/password as sysdba ...
安装Oracle 10g忘记SYS密码(转载)
文章列表
cd D:\java\program
d:
java -Djava.ext.dirs=D:\java\program\lib zhang.data.main.AllExcelExport
迪米特法则(Law of Demeter)又叫做最少知识原则(Least Knowledge Principle),就是说,一个对象应当对其他对象有尽可能少的了解。
狭义的迪米特法则
如果两个类不必彼此直接通信,那么这两个类就不应该发生直接的相互作用。如 ...
原文:http://www.blueidea.com/tech/web/2006/3231.asp
合成/聚合复用原则 就是在一个新的对象里面使用一些已有的对象,使之成为新对象的一部分;新的对象通过向这些对象的委派达到复用已有功能的目的。
另一个更简短的表述:要尽量使用合成/聚合,尽量不要使用继承。
合成和聚合的区别
合成和聚合均是关联的特殊种类。聚合用来表示“拥有”关系或者整体与部分的关系;而合成则用来表示一种强得多的“拥有”关系。在一个合成关系里,部分和整体的生命周期是一样的。一个合成的新的对象完全拥有对其组成部分的支配权,包括它们的创建和销毁等。使用程序语言的术语来讲,组合而成的新对象对组成部分的内存分配、内存释放有绝对的责任。
合成/聚合复用的好处:
1、 ...
接口隔离原则(Interface Segregation Principle)讲的是:使用多个专门的接口比使用单一的总接口要好。
角色的合理划分
将接口理解为一个类所提供的所有方法的特征集合,也就是一种在逻辑上才存在的概念。这样的话,接口的划分就直接带来类型的划分。
一个接口相当于剧本中的一种角色,而此角色在一个舞台上由哪一个演员来演则相当于接口的实现。因此,一个接口应当简单地代表一个角色,而不是多个角色。如果系统涉及到多个角色的话,那么每一个角色都应当由一个特定的接口代表。
定制服务
将接口理解成为侠义的java接口,这样一来,接口隔离原则讲的就是为同一个角色提供宽、 ...
依赖倒转原则讲的是:要依赖于抽象,不要依赖于具体。
从复用的角度来看,高层次的模块是设计者应当服用的。但是在传统的过程性的设计中,复用却侧重于具体层次模块的复用,比如算法的复用、数据结构的复用等,都不可避免是具体层次模块里的复用。较高层次的结构依赖于较低层次的结构,较低层次的结构又进一步依赖于更低层次的结构,如此继续,直到依赖于每一行的代码。较低层次上的修改,会造成较高层次的修改,直到高层次逻辑的修改。
依赖倒转原则(Dependence Inversion Principle)的表述是:
抽象不应当依赖于细节,细节应当依赖于抽象。(Abstractions should not de ...
里氏代换原则
如果对每一个类型为T1的对象O1,都有类型为T2的对象O2,使得程序P的所有对象O1被替换成O2时,程序P的行为没有变化,那么类型T2是类型T1的子类型。
里氏替换原则是继承复用的基石。只有当衍生类可以替换掉基类,软件单位的功能不会受到影响时,基类才能真正的被复用,而衍生类也才能够在基类的基础上增加新的行为。
里氏代换原则讲的是基类与子类的关系。
在设计模式中的应用:
1、策略模式。 2、合成模式。 3、代理模式。
一般而言,如果有两个具体类A和B有继承关系,那么一个最简单的修改方案是建立一个抽象类C,然后让类A和类B成为抽象类C的子类。
在java语言里,类有两种:一种是具体类,另一种是抽象类。具体类可以实例化,抽象类不可以实例化。
抽象类的用途
具体类不是用来抽象的,只要有可能就不要从具体类继承。
抽象类应该更多的拥有共同的代码
一个典型的例子就是策略模式。在策略模式中,抽象策略的角色的分量越重越好,也就是多尽可能的将公用的方法移到抽象策略角色中。
抽象类应该拥有尽可能少的数据
正确使用继承
在java语言里,继承关系可以分为2中:一种是类对接口的实现,称做接口继承;另一种是类对类的继承,称做实现继承。
使用继承关系:
1、子类是超类的一个特殊类,而不是超类的一个 ...
一个方法的特征仅包括方法的名字、参数的数目和种类,而不包括方法的返回类型、参量的名字以及所抛出的异常。
接口和类的最重要区别是,接口仅仅描述方法的特性(Signature),而不给出方法的实现;而类不仅给出方法的特征,而且给出方法的实现。因此,接口把方法的特征和方法的实现分割开来。这种分割,体现在接口常常代表一个角色(role),它包括与该角色相关的操作和属性,而实现这个接口的类便是扮演这个角色的演员。一个角色可以由不同的演员来演,而不同的演员之间除了扮演一个共同的角色之外,并不要求有任何其他的共同之处。
接口是对可插入性的保证。1、关联的可插入性。2、调用的可插入性。
接口常见的用 ...
开闭原则指的是一个软件实体应该对扩展开放,对修改关闭。
Software entities should be open for extension,but closed for modification.
满足“开-闭原则”的设计可以给软件体统2个无可比拟的优越性
1、通过扩展已有的软件系统,可以提供新的行为,以满足软件的新需求,是变化中的软件系统有一定的适应性和灵活性。
2、已有的软件模块,特别是最重要的抽象层模块不能修改,这就使变化中的软件系统有一定的稳定性和延续性。
对可变性的封装原则
(1)可变性不应散落到代码的不同角落里,而应该封装到一个对象里。同一可变性的不同表现意味同一继承等级结 ...
设计的目标
一个好的系统应该有如下性质:可扩展性(Extensibility)、灵活性(Flexibility)、可插入性(Pluggability)。
设计原则有哪些
1、“开-闭”原则(Open-Closed Principle,OCP)
2、里氏代换原则(Liskov Substitution Principle,LSP)
3、依赖倒转原则(Dependency Inversion Principle,DIP)
4、接口隔离原则(Interface Segregation Principle,ISP)
5、组合/聚合复用原则(Composition/Aggregation Princip ...
问题描述:
服务器端数据---》jsp页面。 jsp 代码
<%@ page contentType="text/html;charset=utf-8" pageEncoding="GBK"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<c:out value="${test}"/>
,查看输出的源码,冒号总变成"
解决办法:
修改 ...
对一个软件而言,UML具有以下重要功能:可视化(Visualizing)功能,说明(Specifying)功能、建造(Constructing)功能和建文档(Documenting)功能。
UML包括以下的图:
1、使用案例图(Use case diagrams)
2、类图(Class diagrams)
3、序列图(Sequence diagrams)
4、合作图(Collaboration diagrams)
5、状态图(Statechart diagrams)
6、活动图(Activity diagrams)
7、构件图(Component diagrams)
8、部署图(Deployme ...
http://www.cublog.cn/u3/103360/showart_2043375.html
linux svn 配置
2009-08-19 11:02
-------------vi 乱码-----------------------
vi .bashrc
加入下面
export LANG=en_US
----------------安装软件-----------------------------
1.安装apr
cd apr
./configure --prefix=/usr/local/apr
make
make install
2.安装apr-util
cd ap ...
<script>
function tabFlexSwitch(source,id) {
if (source == 'kxx') {
var idArray = new Array("shijian", "jihua", "diyu");
changTab(id, source, idArray);
}
}
function changTab(id, source, idArray) {
for (var i = 0; i < idArray.length; i++) { ...