免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1671 | 回复: 1

Haskell:什么时候该注释,什么时候不该注释 [复制链接]

论坛徽章:
2
2015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:55:28
发表于 2014-07-25 09:47 |显示全部楼层
  


大家都知道,写程序时应该让程序易读易懂,而添加注释是让你的程序实现这个目标的好方法。然而,对于一个程序,并不是你添加了足够多的注释,它就能 变得的易懂易读。事实上,第一要务是你的程序要写的干净整洁,这样也就没有添加注释的必要了。编译器是不会检查你的注释的,而注释往往会滞后于代码的更 新,跟实际代码实现不一致。如果你打算要写一段注释,在你真正的动手写之前,请先思考一下下面的这些问题:

这段注释是来标注一个特殊情况吗?那么,你最好别让这个特殊情况存在。例如:

a+b-b  -- 你不能删除这里的(b-b),因为这里的算术操作不按正常的结合性
如果你这里是自定义的数据类型,操作不按正常的结合性,那么,最好你就不应该让它看起来是一个Num实例。

我要再次强调:努力 – 努力 – 再努力 – 去除程序中的特殊行为特征。注释是不能为这些反常行为提供安全保护的。

不用看都明白的注释?例如:

-- 互换一对元素
swap :: (a,b) -> (b,a)
恭喜你,你使用了一个非常好的函数名称,非常好的过程语法,使得这个函数的意图非常的明显,不需要任何注释。所以,删掉这个注释。留着它早晚是个祸害,有一天它会滞后于代码的更新。

注释的内容描述Haskell语言的动作?

let b=a+1   -- 让'a'加1
这里的+和1显然就是程序的执行过程。

你最好注释代码的意图,比如:

let b=a+1   -- 增加循环计数器'a'
但是,重复之前的观点,让程序干净整洁而不需要注释是最好的选择。例如:

let newCounter = oldCounter+1

英文原文标题是:Commenting。本文是在程序师网首次发表.

转自 开源中国社区

本文来自ChinaUnix新闻频道,如果查看原文请点:http://news.chinaunix.net/opensource/2014/0725/3188207.shtml

论坛徽章:
5
丑牛
日期:2014-01-21 08:26:26卯兔
日期:2014-03-11 06:37:43天秤座
日期:2014-03-25 08:52:52寅虎
日期:2014-04-19 11:39:48午马
日期:2014-08-06 03:56:58
发表于 2014-07-25 11:53 |显示全部楼层
Haskell 读懂不易
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP