读《松本行弘的程序世界》——松本行弘眼中Ruby受欢迎的原因

简洁性

不管使用何种编程语言的程序员,每天能够编写的代码行数是一定的,因此编程语言的区别也就意味着开发效率的区别,比如500行汇编和500行Ruby代码之间的差距。

如果可以把伪码中非实质的东西去掉,只保留描述算法的部分就直接运行,那么这种编程语言补救是最好的吗?Ruby的目标就是成为开发效率最高、“能直接运行的伪码式编程语言”。(去掉了如变量定义,花括号等元素。例如换行原本是为了程序的可读性,但是换行也可以用于划分代码块,一举两得)。

在我接触过的语言中,像Ruby,Python这样的语言在我一开始就给我最强烈的感受就是代码简洁,同样的代码,用Java这种规规矩矩的语言写起来要多出不少字符:)有些事就怕比,有人说世界上有两种语言,一种被人骂的,还有一种是没人用的。但是大红大紫的Ruby明显不属于这两类。前些天看robbin的文章ruby off rails也学到了不少东西,同时也证明Ruby本身的效率也是不错的。我想,一个如此优秀的语言,让人没理由不喜欢。我之后也准备学习一下Ruby的脚本。



扩展性
语言应该提供可扩展机制。“如果想做就可以做到”,通过抽象来使系统获得良好的扩展能力。面向对象将数据与对数据的操作通过对象绑定到一起,进行封装,成为一个黑盒。
此外,编程语言不是从安全性角度考虑以减少程序员犯错误,而是在程序员自己自己负责的前提下为他提供最大限度发挥能力的灵活性。(Unix编程艺术艺术中提到的安全边界,程序员清楚一切,比如删除文件时没有提醒等。)
具备良好扩展性的系统,不应有一些想当然的限制。比如千年虫源于设计者认为只需要两位即可表示年份、Unicode字符集认为16位,即65535个字符,足够表达所有字符。以及IPv4的32位IP地址在今天无法完全满足需要,从而需要IPv6的64位地址。(64位的IPv6被认为足够给地球上每一粒沙都分配一个IP地址)


稳定性
Ruby没用引入可以获得极大扩展性的宏机制,尤其是LISP的宏机制。原因在于该机制虽能扩展出不同的语言特性和构造,使得程序的可读性迅速降低。作者提到LISP的一些程序表现出截然不同的语言特性,如同采用不同编程语言所编写。因此设计Ruby时,为了保证其语法的稳定性,没有引入该种机制。


关于兴趣

作者提到他最初开发Ruby只是出于兴趣,没想过要将其作为主业,但是现在开发Ruby已经成为了他本职工作。他开发Ruby是想要一种能够提高开发效率的语言,而事实表明他的确做到了,在他与各国开发者交流时获得的反馈最多的是:用Ruby开发很快乐:)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值