09 2011 档案

摘要:最近在网上看了很多关于架构的文章,比较流行的是三层架构。我也来凑个热闹,跟着扯一扯分层。我们从大处往小处说,先说,什么是架构?架构是一系列相关的抽象模式,用于指导大型软件系统各方面的设计。它描述一个软件系统从整体到部分的最高层次的抽象划分。直接认为架构就是系统草图也不为过。根据我们关注的角度不同,架构大概有三种:1、逻辑架构,主要描述软件系统中元件之间的关系,例如用户界面,数据库,业务逻辑元件等等2、物理架构,主要描述软件元件是如何安装到硬件上的。3、系统架构,主要描述系统的非功能性特征,如可扩展性、可靠性、强壮性、灵活性、性能等。可以看到,系统架构师必须具备软件和硬件两方面的过硬能力,还得有 阅读全文
posted @ 2011-09-30 10:05 java程序员填空 阅读(146) 评论(0) 推荐(0)
摘要:一、概要 抽象工厂模式(Abstract Factory),提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。抽象工厂模式提供一种“封装机制”用来解决“多系列具体对象”的创建工作,降低客户端和“创建工作”的紧耦合度。二、生活中的例子 例如一个汽车工厂(抽象工厂),拥有四个下属汽车工厂(具体工厂),分别是生产轿车,越野车,客车,每个工厂都要有生产各自类型汽车配件的车间(方法)。 考虑到开闭原则,增加新车型工厂容易,增加新型配件不容易。图示:三、实现思路 当有多个抽象产品,且每个抽象产品都有多于一个的具体子类的时候,而抽象工厂角色又提供多个具体的工厂角色,分别对应多个具体的产品角 阅读全文
posted @ 2011-09-29 21:38 java程序员填空 阅读(201) 评论(0) 推荐(0)
摘要:欢迎技术交流。 QQ:138986722一 简单的线程方式周期执行 所谓线程式就是规定了和thread类似的timer类每隔一段时间(自己在配置文件中定义的时间)run方法就会被执行一次,所以他是一个单线程类首先需要了解的是他继承自java.util..TimerTask类,执行方法体为其复写的父类中的public void run()方法package cn.xy.util; import java.util.TimerTask; publicclass MyThreadtimer extends TimerTask{ @Override publicvoid run() { ... 阅读全文
posted @ 2011-09-26 14:56 java程序员填空 阅读(256) 评论(0) 推荐(0)
摘要:一、概要 工厂方法(FactoryMethod)模式的意义是定义一个创建产品对象的工厂接口,将实际创建工作推迟到子类当中。二、生活中的例子 例如移动电信运营商,不同的话费套餐形式,如动感地带,神州行,全球通等。我们可以把抽象工厂(套餐工厂)做成一个接口,这个接口只有一个方法,就是创建抽象产品(计费类)的工厂方法。然后所有的要生产具体类(动感地带,神州行等)的工厂去实现这个接口,由具体的套餐工厂去创建具体的套餐类。于是我们再增加新的套餐的时候,就不需要更改原有的工厂类,只需要增加此功能的计费类和相应的工厂类就可以了。图示:三、实现思路 工厂方法模式是对简单工厂模式进行了抽象。有一个抽象的Fact 阅读全文
posted @ 2011-09-25 07:45 java程序员填空 阅读(175) 评论(0) 推荐(0)
摘要:一、索引器的基本概述 索引器定义类似于属性,但其功能与属性并不相同,可以看成是属性的增强版,它能够让对象以类似数组的方式来存取,使程序看起来更为直观,更容易编写。1、索引器的定义定义的一般形式:[修饰符] 数据类型this[索引类型 index]{ get{//获得属性的代码} set{ //设置属性的代码}}修饰符包括public,protected,private,internal,new,virtual,sealed,override, abstract,extern.this关键字用于定义索引器。this表示操作本对象的数组或集合成员,可以简单把它理解成索引器的名字,因此索引器不能具有 阅读全文
posted @ 2011-09-22 08:48 java程序员填空 阅读(1342) 评论(1) 推荐(0)
摘要:在C#中,委托(delegate)是一种引用类型,在其他语言中,与委托最接近的是函数指针,但委托不仅存储对方法入口点的引用,还存储对用于调用方法的对象实例的引用。简单的讲委托(delegate)是一种类型安全的函数指针. 仅仅看它的概念,可能还是很模糊,我们来举例子由浅入深地说明一下。(强烈提醒:注意代码中的一些关键注释。代码完全可以复制下来直接运行。) 需求:《收费系统》计费标准:会员1元/小时;临时用户:1.5元/小时。//我们先来看看不使用委托,该如何实现usingSystem; namespace不使用委托 { class Program { ... 阅读全文
posted @ 2011-09-20 09:27 java程序员填空 阅读(369) 评论(0) 推荐(0)
摘要:一、概要 单例模式,提倡简约而不简单,透漏一种简捷美。它保证一个类仅有一个实例,并提供一个访问它的全局访问点。要点有三个;一是某个类只能有一个实例;二是它必须自行创建这个实例;三是它必须自行向整个系统提供这个实例。二、生活中的例子 1、在中国,一个男人只能有一个合法妻子 2、世界上只能有一个中国 3、windows只能有一个任务管理器 等等三、实现思路 一个类能返回对象一个引用(永远是同一个)和一个获得该实例的方法(必须是静态方法,通常使用getInstance这个名称);当我们调用这个方法时,如果类持有的引用不为空就返回这个引用,如果类保持的引用为空就创建该类的... 阅读全文
posted @ 2011-09-18 15:13 java程序员填空 阅读(160) 评论(0) 推荐(0)
摘要:构造函数和析构函数 转载http://www.cnblogs.com/philzhou/archive/2010/08/10/CSharp_Constructor.html本节说明对象的创建、初始化和销毁过程。本节介绍下列主题: l 类构造函数l 结构构造函数l 析构函数类构造函数本节将讨论三种类构造函数:类构造函数的类型注释实例用于创建并初始化类的实例。私有在类之外不可访问的特殊类型实例构造函数。无法用私有构造函数来实例化类。静态在创建第一个实例或引用任何静态成员之前,将自动调用这种构造函数来初始化类。无法直接调用这种构造函数。备注(1) 实例构造函数创建新对象时将调用类构造函数,例如:Po 阅读全文
posted @ 2011-09-17 21:13 java程序员填空 阅读(200) 评论(0) 推荐(0)
摘要:一、重载:同一个作用域内发生(比如一个类里面),定义一系列同名方法,但是方法的参数列表不同。这样才能通过传递不同的参数来决定到底调用哪一个。 值得注意的是,方法重载只有通过参数不同来判断调用哪个方法,而不能通过返回值。至于原因,可以这样理解,你调用一个方法,如果有多个方法同名,系统必须要知道到底你要调用哪一个,参数可以帮助系统在方法入口处得到答案,他根据你给的参数就知道该使用哪个方法。如果只有返回值的不同,很多情况系统是不可能得到有效的判断条件的,比如:double method();int method();如果你这样调用:method()。系统当然不知道该调用哪个。示例://返回值相同.. 阅读全文
posted @ 2011-09-15 12:38 java程序员填空 阅读(192) 评论(0) 推荐(0)
摘要:1.小强每天在村里晃悠,爹妈看着发愁,心想这孩子将来怎么办呀;小明每日都苦读诗书,父母喜在心里,村里人都认定他必有出息。2.那年,小强和小明都是十九岁,小强跟着村里的外出打工,来到了高速公路的工地,保底工资三千块;小明考上了一所重点大学,读的是道路与桥梁专业,学费每年五千多。3.那年,小强和小明都是二十三岁小强的爹妈给他说个巧媳妇,是邻村的,特别贤惠;小明在大学里谈了个女朋友,是邻校的,很有文化。4.那年,小强和小明都是二十四岁小强在老家结了婚,把媳妇带到工地上,来给他洗衣做饭,恩爱有加;小明终于大学毕业,找了施工单位工作,跟女友分居两地,朝思暮想。5.小强每天很快乐,下了班就没事,吃了饭和媳 阅读全文
posted @ 2011-09-07 02:04 java程序员填空 阅读(124) 评论(0) 推荐(0)
摘要:统一建模语言(UML是 Unified Modeling Language的缩写)是用来对软件密集系统进行可视化建模的一种语言。UML为面向对象开发系统的产品进行说明、可视化、和编制文档的一种标准语言。 统一建模语言 (UML)是非专利的第三代建模和规约语言。 UML是在开发阶段,说明,可视化,构建和书写一个面向对象软件密集系统的制品的开放方法。UML展现了一系列最佳工程实践,这些最佳实践在对大规模,复杂系统进行建模方面,特别是在软件架构层次已经被验证有效。 UML可以贯穿软件开发周期中的每一个阶段。被OMG采纳作为业界的标准。 UML最适于数据建模,业务建模,对象建... 阅读全文
posted @ 2011-09-05 20:50 java程序员填空 阅读(127) 评论(0) 推荐(0)
摘要:统一建模语言(UML是 Unified Modeling Language的缩写)是用来对软件密集系统进行可视化建模的一种语言。UML为面向对象开发系统的产品进行说明、可视化、和编制文档的一种标准语言。 统一建模语言 (UML)是非专利的第三代建模和规约语言。 UML是在开发阶段,说明,可视化,构建和书写一个面向对象软件密集系统的制品的开放方法。UML展现了一系列最佳工程实践,这些最佳实践在对大规模,复杂系统进行建模方面,特别是在软件架构层次已经被验证有效。 UML可以贯穿软件开发周期中的每一个阶段。被OMG采纳作为业界的标准。 UML最适于数据建模,业务建模,对象建模,组件建模。... 阅读全文
posted @ 2011-09-04 07:40 java程序员填空 阅读(150) 评论(0) 推荐(0)
摘要:一、RUP产生的背景 UML能够用来为系统进行面向对象建模,但是并没有指定应用UML的过程,它仅仅是一种语言,它是独立于任何过程的。如果想要成功的应用UML一个好的过程是必要的。合理的过程能够有效的测度工作进度,控制和改善工作效率。目前有很多的过程,其中能够和UML最佳结合的是RUP,该过程是提出UML的人开发的,能够与UML很好的结合。二、下面这张图介绍了RUP的基本内容清晰大图地址:http://35free.net/shan9liang/UML/Rup.htm 阅读全文
posted @ 2011-09-01 07:51 java程序员填空 阅读(159) 评论(0) 推荐(0)