Chinaunix首页 | 论坛 | 博客
  • 博客访问: 285389
  • 博文数量: 49
  • 博客积分: 3083
  • 博客等级: 中校
  • 技术积分: 710
  • 用 户 组: 普通用户
  • 注册时间: 2007-07-27 08:22
文章分类

全部博文(49)

文章存档

2009年(8)

2008年(41)

分类:

2009-02-07 13:44:21

一粒种子,在经历过风雨后,会长成参天大树。一段代码,在经过不断的完善之后,会形成自己的体系,成为一个软件。在代码的写作中,是否应当遵循一定的规律?在代码设计的初级阶段,各项设计都还不完善的情况下,是否应当按照相应的设计模式进行设计,或者是在软件达到一定规模后再重写整个代码呢?

Design paterns》通过一个个实例告诉我们在OOP中应当如何编写适合的代码。试想下,一个HelloWorld是否应当有更好的设计方法。在Hello World的使用中,是否会有更多的选择,是否

#include

int main(){

       printf(“Hello World”);

       return 0;

}

是最优的代码,如果Hello World需要扩展,应当如何扩展?对比以下的代码

#include

#define OUTPUT "Hello World"

int main(){

       printf(OUTPUT);

       return 0;

}

将输出的内容变成了宏。代码从实质上来看,并没有任何的变化。应该说,在这里采用的#define完全是不必要的,多敲入了好几个字符。

某一天,你不仅要在Console里输出Hello World,还需要在图形界面中输出Hello World。这时,你所需要的也就是在图形界面的输出中写上Hello World;又有一天,你的程序需要向网络上输出Hello World,那么,也是向网络输出的代码中写入的Hello World。又有一天,程序需要像数据库写入Hello World了……

直到某一天,你的程序已经在不知不觉中变成了一个软件,可以上市销售了。根据市场的要求,需要在输出中,加入你的信息了,这时,采用第一个代码格式的需要查阅所有代码,在输出中添加Liuweni,Console里修改输出,在GUI,网络,数据库……中一一添加。但是第二段代码呢?或许仅仅将#define OUTPUT "Hello World"修改成#define OUTPUT "Hello World Liuweni"

       但是在软件开发中,并不需要死板的去套某些设计模式,而是需要综合整个项目,在项目中使用自己学习到的设计模式的知识去规划当前项目的代码开发模型。

阅读(1563) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~