主题:嘛叫可读性?
我想请问一下代码的可读性与可维护性具体指的是啥。请在公司工作的大哥们,能不能解释一下?工作之间,代码该写成怎样。不是指在
代码中间加缩进、空行、空格、注释之些,不是问这个,因为每个人写代码时的想法肯定不同,有时为了省下一行或者某个原因就可能精简了一下,
这样叫编程技巧吗?如果不是,什么情况才叫编程技巧,明明可以那样简单做,却故意拐个弯把事情搞复杂起来才叫编程技巧吗?当然,我问
这个问题不是为了学什么编程技巧,我只想搞明白怎么一回事,如果真是如我所说的那样,那可以改个名字吧,不叫编程技巧,叫装B。。。
说白了,我是因为continue这个关键字才搞得我莫名其妙,就我目前浅薄的经验来看这个关键字,它的作用是退出当层循环重新回到循环语句
开始的判断表达式。既然这样,何不在一开始就指明了呢,用&&多好。我的意思是指如果continue包含在某个if语句里这种情况。用一个例子吧
while(getchar() != '\n')
;
这个程序是在书上抄的,它说这个循环读取并丢弃输入,直到输入回车。然后作者在空白分号的前面加上continue写出另一个代码,如下:
while(getchar() != '\n')
continue;
作者解释说第二个代码更具可读性,我却觉得怪怪的,原因是多使用了个关键字,肯定就在编泽器内部多使用一种机制,我单单只有;号,
代表一个空语句,看起来不更简单明了吗?让人一看就知道,这个循环除了回车以外,啥也不要。加了一个continue还要想下,哦这个关键字
是有退出当层循环重新开始的作用。何必吗?回归到问题本质,我想知道,什么叫做代码的“可读性”与“可维护性”我之所以把可维护也
扯上,没有其它的原因,就是因为觉得维护是在能读懂程序后再进行的维护,不要当真啊,大哥。既然可读了可维护就啥好说的了。
文中所写的,全是完整的想法,没有经过任何的修改,所以,我的本意没有任何其它不敬的意思,求解,小弟感激不尽。
ps:说实在的,现在的学习让人有些迷茫,我未来是想开发游戏,我知道这需要基础知识,学了C有半年,仍然不知道3D图像是如何生成的。。。
也看过些理论,什么顶点、点阵啊,啥的,不明白。。。好像,我现在用C就只能算些简单的东西,比如一辆车跑多少公里用多少油。。。输入
小写字母然后又干嘛干嘛,if啊else啊,最终printf或者putchar。有时我找个题目写着写着,然后就会停下来,望着屏幕发呆半天,
回过神来就会想:我在干什么?甚至有时看到有些用英寸转换成厘米,公里转英里,我特厌恶这种题目,我怎么了?唯有玩游戏的时候才
会思考这个游戏动作是怎么产生的。半年前下载一本C Primer Plus自学C,现在半年时间已过,学到第7章,if语句。唉,说这些没有什么意义。
请帮个忙,讲解一下上面的问题,ps里的只是我心情罢了,说出来能好受些。唉,心情郁闷。另外让问下各位读代码是以抽象的方式来读还是以编译器的方式
来读?比如是cm > 90 && cm < 100这行,我一般都这么读:键入的厘米数大于90且小于100.我指的抽象的方式是不是这种读法:介于90到100
的厘米数。也许描述得不太正确,请海涵~~。
代码中间加缩进、空行、空格、注释之些,不是问这个,因为每个人写代码时的想法肯定不同,有时为了省下一行或者某个原因就可能精简了一下,
这样叫编程技巧吗?如果不是,什么情况才叫编程技巧,明明可以那样简单做,却故意拐个弯把事情搞复杂起来才叫编程技巧吗?当然,我问
这个问题不是为了学什么编程技巧,我只想搞明白怎么一回事,如果真是如我所说的那样,那可以改个名字吧,不叫编程技巧,叫装B。。。
说白了,我是因为continue这个关键字才搞得我莫名其妙,就我目前浅薄的经验来看这个关键字,它的作用是退出当层循环重新回到循环语句
开始的判断表达式。既然这样,何不在一开始就指明了呢,用&&多好。我的意思是指如果continue包含在某个if语句里这种情况。用一个例子吧
while(getchar() != '\n')
;
这个程序是在书上抄的,它说这个循环读取并丢弃输入,直到输入回车。然后作者在空白分号的前面加上continue写出另一个代码,如下:
while(getchar() != '\n')
continue;
作者解释说第二个代码更具可读性,我却觉得怪怪的,原因是多使用了个关键字,肯定就在编泽器内部多使用一种机制,我单单只有;号,
代表一个空语句,看起来不更简单明了吗?让人一看就知道,这个循环除了回车以外,啥也不要。加了一个continue还要想下,哦这个关键字
是有退出当层循环重新开始的作用。何必吗?回归到问题本质,我想知道,什么叫做代码的“可读性”与“可维护性”我之所以把可维护也
扯上,没有其它的原因,就是因为觉得维护是在能读懂程序后再进行的维护,不要当真啊,大哥。既然可读了可维护就啥好说的了。
文中所写的,全是完整的想法,没有经过任何的修改,所以,我的本意没有任何其它不敬的意思,求解,小弟感激不尽。
ps:说实在的,现在的学习让人有些迷茫,我未来是想开发游戏,我知道这需要基础知识,学了C有半年,仍然不知道3D图像是如何生成的。。。
也看过些理论,什么顶点、点阵啊,啥的,不明白。。。好像,我现在用C就只能算些简单的东西,比如一辆车跑多少公里用多少油。。。输入
小写字母然后又干嘛干嘛,if啊else啊,最终printf或者putchar。有时我找个题目写着写着,然后就会停下来,望着屏幕发呆半天,
回过神来就会想:我在干什么?甚至有时看到有些用英寸转换成厘米,公里转英里,我特厌恶这种题目,我怎么了?唯有玩游戏的时候才
会思考这个游戏动作是怎么产生的。半年前下载一本C Primer Plus自学C,现在半年时间已过,学到第7章,if语句。唉,说这些没有什么意义。
请帮个忙,讲解一下上面的问题,ps里的只是我心情罢了,说出来能好受些。唉,心情郁闷。另外让问下各位读代码是以抽象的方式来读还是以编译器的方式
来读?比如是cm > 90 && cm < 100这行,我一般都这么读:键入的厘米数大于90且小于100.我指的抽象的方式是不是这种读法:介于90到100
的厘米数。也许描述得不太正确,请海涵~~。