因为我不是专职的程序员,所以不常写大型程序,其实算起来,我个人用得最多的是脚本语言,主要用来处理生成的数据,还有画图的工作,还有就是写过不太复杂的仿真程序,matlab用来搞这个当然是非常的不方便的。
最开始当然是用有名的python,虽然开始的时候就觉得python用空格来缩进有点不方便,但用来还是可以的。但是自从我接触了ruby以后,我就不太喜欢python了,于是我就开始用ruby。然后呢,很多跟我研究相关的程序中都用的python,于是我想,好算了吧,我还是就专心用python就好了。再然后,最近我又觉得ruby的语法还是比较对我的胃口!
我看算了,今天就做个决定,以后就用ruby来处理日常的工作,要跟我相关的软件用python的话,就跟着用来写点简单的,或者修改。下面我就个人感觉来小做个比较这两个语言:
1)Python的类库支持比ruby多很多,这点ruby跟python不是一个档次的。做gui程序,wxpython已经相当成熟了,wxruby感觉还是beta的产品。做仿真,python有simpy,ruby没有。还有很多例子,ruby这方面跟python可以说完全不是一个档次的。
2)Python和ruby比谁快的问题,反正对我都一样。我根本就不会用它们来写大型的程序,我只是用他们来处理我日常用的一些小事务,大的我用java就行了。
3)Ruby的语法我个人觉得比python好很多,我个人感觉跟python的语言创始人不太对味。脚本语言就是要语法越方便越好,我感觉python那种“只能用一个最明显的方法来实现“的设计理念实在是不怎么样。就比如说把,我个人最不喜欢的python里面文字输出基本上就只有一个print,想要搞一点比较格式话的输出就要用” “ % () 这样的方法,搞得跟c语言一样。我看介绍说在python 3.0里面居然 print “ “都要改成 print(“”)这样严格的语法,我估计python创始人那位老兄可能跟赵忠祥是一类人,我只能说太稳重了!还有ruby的arrary用个<<就相当于python里面的append,正则表达式也可以直接用,这对我来说都是最常用的操作,用python来写感觉真是很别扭!
网上关于ruby和python的争论的文章已经非常对了,我看很多人扯到很深层次的语言特性,在我看来都有点无聊。我只是真的跟python不对味,然后就是对我个人的工作来说,ruby确实是最方便的。