`
buliedian
  • 浏览: 1194930 次
  • 性别: Icon_minigender_2
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

使你的代码变得更加美观,易读

阅读更多

无意中看了很多代码,大家往往为了更加方便,轻松,而使代码的可读性下降,可读性很重要,无论是对你或者是看你代码的别人。可以这样想,假如过了几年,无意中翻到以前写的代码,你能确保在读懂它的意思吗?同样,也要确保别人也能读懂。在软件工程中,团队合作是很重要的,成员之间的交流更为之重,交流当中也包含了代码的浏览,所以一定要保证代码的美观。

第一: 熟练使用typedef

1. typedef 在 struct和class中的应用

举个例子: 在C语言和C++中,定义结构体的时候。

一个是 struct node

{

int a;

};

而另一个是

typedef struct node

{

int a;

}NODE;

两种方法虽然都是定义一个结构体,但是下面那种更有点技巧,可以使代码变得更简洁,美观,不行,继续看下去。

1. sizeof(struct node)

2. sizeof(NODE)

看着那个更舒服点呢? node结构体名字还是很短的,如果在长点话,然后sizeof多出现几次的时候,第一种方法是不是要头晕了?

当然这只是在C和C++中才会出现的,对于C#和Java就好多了,直接就是定义类型了,不需要重复写struct, class关键字了。

同理,class也是。

class CGameServer

{

private:

int m_member;

public:

int GetMember const { return m_member; }

};

如果发现类的名字有点长,我们可以如下写:

typedef CGameServer Server;

以后定义CGameServer的变量时候,就可以直接这样写:

Server server;

2. typedef 在数据类型中的应用

要定义一个32位无符号变量,在C和C++中比较麻烦,需要这样 unsigned int a;

unsigned 打字很累啊, 对于大系统来说,该类型的变量将会频繁出现了,那么时间久了你会觉得很烦,不要想着用int直接替代unsigned int!

那么有个好方法,那么就是typedef 关键字。

typedef unsigned int uint32;

怎么样?uint32 字母数少了很多,又不会少了表达。

第二合理的空格,换行

(1)括号之间的对其,包括内嵌括号。

{

}

这样容易读代码,而且看着也好看。

(2)如果一条语句过长,可以尝试换一行接着表达,不要一味的写在一行。

if ( ( A >= 0 && A <= 100 ) ||

( B >= 0 && B <= 100 ))

{

}

是不是这样看着也不错?

(3)定义函数或者方法的时候,参数过长也要适当的换行。

int Create(PARAM param1,

PARAM param2,

PARAM param3,

PARAM param4)

{

}

第三 一个模块的代码不宜太多

这里的模块指方法或者函数,如果一个函数定义的代码很多的话,假如一个方法就有几页的代码,你看着会是什么感觉呢?

第四 勤加注释

不要觉得注释很麻烦,因为注释的作用很大,是必要的,你可以选择一些别人不容易看懂的地方添加注释,告诉别人你在这里写了什么,什么功能,原理等等。

第五 模块划分

这里将会涉及到系统架构,设计模式等多方面的知识了,模块如果划分很清晰的话,将大大提升可读性,同时也能使代码更加美观,模块都是清晰的。

以上是自己看了很多代码以及自己的经验所得来的,希望对大家有所帮助!

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics