在应用程序开发中,良好的命名规范 是为了规范代码,让代码更加容易维护和阅读。同样,设计模式是一种软件设计方法,也是为了使开发出来的应用程序能够更好的使用和维护。在应用程序设计中,维护成本在软件设计占70%或更高,所以良好的软件结构能够为后期开发和维护提供便利。
1>什么是设计模式
模式,就是一种规范,在新华字典上关于模式的解释如下:
法式、规范,标准。例如,模范、模式、楷模、模型、模本、模压。
仿效:模仿(亦作“摹仿”)。模拟(亦作“摹拟”)。模写。
那么,所谓的设计模式,就是软件设计的一种范烈。虽然定义上看上去非常简单,但是实际上初学者是非常难以理解的。设计模式是一项长期的学习,需要不停的使用和学习才能掌握。
2>为什么要使用设计模式
设计模式是一种编码的范烈。在软件开发过程中,不同的人对类的设计不同,命名的方法也不同,在类的结构上的设计业不同,通常会导致代码混乱,难以阅读和难以维护,以至于上 个世纪出现了所谓的“软件危机”,于是人们在软件开发的经验中找到了一种模式。所谓的模式,就是一种规律、规范。例如现代的教育模式,大家都会从小学开始,慢慢的读到大学,是一种经典的模式。在软件的开发过程中,也存在这样的模式,就是通常情况下所说的设计模式。
设计模式让人们在软件设计中有据可循。例如在开发一套网站管理系统时,首先系统设计师要对网站进行需求分析。在需求分析之后,就需要规定接口,来说明开发中类的规范。在规范制定好以后,开发人员需要按照规范来开发软件,并按照统一的类结构或风格编写代码。
设计模式基本上规定了类的结构,规定了类是怎样派生,以及怎样应用的。常用有28种设计模式,经常使用的成熟的设计模式有9种。设计模式的学习死一个长期的过程。初学者在理论上很难理解设计模式,是因为如果没有一定的编码基础,是很难理解为何要使用设计模式的,因为很短的代码段,基本上难以涉及到很多人开发,以及在市场上考验的经验。
3>改装现有类
使用设计模式,就需要对现有的代码不停的重构。例如不规范的命名,以及在实际项目过程中遇到的类的结构设计错误等,都需要改装。改装现有类并不是纯属为了类的“好看”,而是为了在实际的运用过程中,能够胜任新的系统要求,并且能够比原有的结构有很好的扩展能力,为了方便维护企业开发成本。例如,在设计一个制造汽车的过程,设计了一个汽车类。示例代码如下所示。- class car //设计汽车类
- {
- string CarNumber; //设计汽车编号
- string CarType; //设计汽车类型
- public string ShowCar() //显示汽车方法
- {
- return "this is a car";
- }
- }
- class Program //出程序类
- {
- static void Main(stirng [] args) //入口方法
- {
- car.car=new car(); //创建一个新的对象
- car.ShowCar(); //使用对象的方法
- }
- }
复制代码 在上述代码中,在同一个文件类声明了一个汽车类class car。在Main方法中,创建了一个car对象,并使用对象car的showcar方法。从上述代码中可以看出,这其中有几个非常不好的习惯,归纳如下所示。
1>命名没有按照规范,看起来没有层次。
2>命名中的字段没有按照规范。
3>命名中的字段推荐使用属性的方法。
4>类与使用对象的方法在同一个文件中。
上面的习惯,最后一条习惯可能会有疑问,会在想为何不能放在同一个文件中。其实,在语法上市没有错误的,不好的是,每当汽车类需要更改时,开发人员就要重新修改car类并重新编译住方法,这样的效率非常低。就好像做了一个网站,更新一个网页就必须更新整个网站一样。这样成本是非常高,而且不利于维护的。最好的做法是将类封装在类库中,存储在“后台”,在“前台”中创建类的对象,而且更新细节的时候,只需要更新类库即可。
在设计模式的学习和使用过程中,是没有最好的设计模式的。而另一方面,虽然没有最好的设计模式,但是有最适合的设计模式。设计模式的熟练使用,通常要求开发人员有比较熟练的编码以及较好的编码习惯,并且在项目开发上有一定的经验。 |