编程语言的可读性
最近我在网上看到一些人把各种脚本语言放到一起进行比较。脚本语言:PHP, Perl, Python, Ruby。我的第一反应,以及第二反应是:讨厌!我有我自己的偏好,从没向任何人说过。我喜欢可读性好的程序,程序里出现的任何的特殊字符(任何非数字、字母的字符)都会影响我的阅读速度。这让我思考起我们应该如何设计编程语言?我们语言设计是在进步还是在倒退还是在停步不前?
回到我刚开始写程序的时候,大概是40年前,那时的三大编程语言是FORTRAN、COBOL 以及后来的BASIC。FORTRAN(FORmula TRANSlation的简写)被数学家(我的数学专业的哥哥必须要学它)和科学家们使用。COBOL (其中的B 代表Business)被用于企业应用。BASIC是一种教学语言,在企业里广为使用。COBOL因为它的冗长的语法而受一些人痛恨,而同时却也被另外一些人所喜爱。但它至少是很容易理解的。看看下面循环的写法:
PERFORM VARYING WS-BOTTLE-NUM FROM 98 BY -1 UNTIL WS-BOTTLE-NUM < 2 END-PERFORM
很像一个英语句子。跟C语言风格的语言(C#)比较:
for (WSBOTTLENUM = 98; WSBOTTLENUM >= 2; WSBOTTLENUM--) { }
哪一个更显而易见?除非你谎称自己没经验。
BASIC (这里是Visual Basic)某些地方可读性处于中等水平。
For WSBOTTLENUM = 98 To 1 Step -1 Next
步长――每次减少的数――很容易理解,至少我是这么认为。让我们看一些非常简单的东西。
k = i / 10;
这会让初学者抓狂。这是做什么的?我们这些程序员当然会知道,但对于初学者,这种指令操作方式会让他们困惑。你可以把它与相同功能的COBOL语言比较:
divide i by 10 giving k
有点长?不错,但一个初学者能看懂。我现在并不是在主张重新回到COBOL语言,诚然,相比起当时在纸片上打孔的时代,现代的集成开发工具和像Intellisence这样的功能让我们的编程变的容易的多了。可是,我还是要说,一些入门语言应该罗嗦一些――英语句子比“#号在这种编程语言里代表什么”要容易上手的多。
只是好玩,如果你想看一看各式各样的语言,可以访问99 Bottles of Beer这个网站。
这个网站收集了用各种不同语言编写的99 Bottles of Beer的歌词。目前已经有1434种不同的编程语言和语言变种来表现这首歌。
建议继续学习:
- 每个程序员都应该学习使用Python或Ruby (阅读:16269)
- 敲击最多的键和编程语言语法 (阅读:5815)
- 为什么Lisp语言如此先进?(译文) (阅读:5621)
- 编程语言的选择很重要 (阅读:4273)
- PHP很烂?我的看法 (阅读:3616)
- 几种计算机语言的评价(修订版) (阅读:3275)
- php语言漫谈 (阅读:3143)
- 分清“语言/规范”以及“平台/实现”,以及跨平台.NET开发 (阅读:3173)
- 为什么我喜欢Lisp语言 (阅读:2972)
- 再谈非主流工业语言 (阅读:2907)
扫一扫订阅我的微信号:IT技术博客大学习
- 作者:Aqee 来源: 外刊IT评论
- 标签: 可读性 语言
- 发布时间:2011-09-25 13:33:14
- [55] IOS安全–浅谈关于IOS加固的几种方法
- [55] Oracle MTS模式下 进程地址与会话信
- [54] 如何拿下简短的域名
- [53] android 开发入门
- [52] Go Reflect 性能
- [52] 图书馆的世界纪录
- [49] 读书笔记-壹百度:百度十年千倍的29条法则
- [48] 【社会化设计】自我(self)部分――欢迎区
- [38] 程序员技术练级攻略
- [32] 视觉调整-设计师 vs. 逻辑