Java语言单态成立性情势介绍[Java编程]
本文“Java语言单态成立性情势介绍[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
什么是情势
一个围棋下得好的人知道,好的"形"关于围棋非常重要.形是棋子在棋盘上的多少形状的抽象化.形就是情势(Pattern),也是人脑掌控和熟习外界的关键.而人脑对处理情势的本领也非常高超, 人可以在几百张面孔中一下子辨认出所熟习的脸来,就是一个例子.
简而言之,在我们处理大量问题时,在很多差别的问题中反复呈现的一种性质,它使得我们可以利用一种办法来描写问题实质并用本质上相同,但细节永不会反复的办法去办理,这种性质就叫情势.情势化历程是把问 题抽象化,在忽视掉不重要的细节后,发现问题的普通性本值,并找到广泛利用的办法去办理的历程.
发现情势是与研究情势同时发生的,发现一个新的情势很不简单.一个好的情势必须满意以下几点:
1、它可以办理问题.情势不能仅仅反映问题,而必须对问题提出办理筹划.
2、它所提出办理筹划是精确的,并且不是很明显的.
3、它必须是触及软件系统深层的构造的东西,不能仅是对已有的模块的描写.
4、它必须满意人的审美,简便美好.
换言之,一个美好的东西不一定就是情势,但是一个情势必须是一个美好的东西.
软件工程学的各个方面,诸如开辟组织,软件处理,项目配置管理,等等,都可以看到情势的影子.但至今 得到了最好的研究的是计划情势和组织情势.在软件编程中利用情势化办法, 是在编程对象化之后才开始得到器重的.软件编程中情势化办法的研究,也是在九十年代才开始.
在面向对象的编程中利用情势化办法研究的创始性著作,是
Design Patterns - Elements of Reusable Object-Oriented Software, E.Gamma, R. Helm, R. Johnson, and J. Vlissides,1995, Addison-Wesley.
这四位作者普通被称为四人帮(Gang of Four, 或GoF).(在这个词呈现今后,很多西方商业炒作操纵这个 路人皆知的词赚钱,有一个八十年代的美国四人乐队以此为队名.在英国政界更曾有好几个小帮派被称为四人帮.在这里大家利用这个词称谓这四个闻名作者,带有戏虐成份.)
由于Java语言的特点,使得情势在Java语言的实现有自己的特点.Java语言是当今最遍及的纯粹OOP的编程语言,利用Java语言编程的程序师平均的本质也相对对比高.这些程序师常常不满意于只是实现程序功效要求,他们常常想要在代码构造,编程气势,乃至办理问题的 考虑方法上不断进取和自我完善.情势,就是在大量的实践中总结和理论化之后的优选的代码构造,编程气势, 及办理问题的考虑方法.对情势的理解和掌握,是Java程序师提高自身本质的一个很好的方向.
作者在学习和工作中把自己的领会 总结下来,藉以与读者交流提高.
作者在背面会利用简单的UML(统一建模语言,Unified Modelling Languge).由于市场上有很多介绍UML 的书,而作者在背面利用到的UML又极其简单,因此只在此作一极其简单的介绍,目的是让没有接触过UML的 读者能看懂背面的报告.
图1. UML的类图举例
在图1的类图中可以看出,表示类的框分成四层:类名,变量清单,函数清单和属性清单.变量名如是正体字,表明类是实的(Concrete,便可以实例化的类),变量名如是斜体字,表明类是抽象的.明显,我们在图中给出了一个实的类.
在图1的类ClassUML中,一个变量或函数(办法)左面假若有一个加(+)号,表示它是公开的, 左面假若有一个减(-)号,表示它是私有的,左面假若有一个井(#)号,表示它是保护的.
一个属性即由一个内部变量,一个赋值函数(mutator)和一个取值函数(accessor)构成的构造.
在类的方框的右上角里,普通还分两行写出类的父类和所实现的接口.在背面读者会看到例子.
在类与类之间,会有线条指明它们之间的关系.在类与类之间可以发生奉行(与担当相反),依靠,积累和关联 等关系.在背面读者看到例子时作者会加以注释.
package com.javapatterns.singleton.demos;
public class ClassUML {
public ClassUML() {}
private void aPrivateFunction() {}
public void aPublicMethod() {}
public int getAProperty(){ return aPrivateVar; }
public void setAProperty(int aPrivateVar)
{ this.aPrivateVar = aPrivateVar; }
static public void aStaticMethod() {}
protected void aProtectedMethod() {}
private int aPrivateVar;
public int aPublicVar;
protected int aProtectedVar;
}
代码清单1. ClassUML类的源代码.
以上是“Java语言单态成立性情势介绍[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |