自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

動態(tài)編程語言遍地開花:淺析Ruby的主流

原創(chuàng)
開發(fā) 開發(fā)工具 后端
隨著計算機的快速發(fā)展,編程語言也越來越多,在10年因為開發(fā)速度的問題,Java成了編程語言的老大,隨著Java不斷的臃腫與復(fù)雜,開發(fā)者也不斷的去尋找,嘗試各種新的語言,也因近年動態(tài)語言有后來居上的趨勢,Ruby作為具有動態(tài)類型的解釋型面向?qū)ο笳Z言因此而被開發(fā)者熱捧。革命的年代已經(jīng)結(jié)束。Ruby從1995年至今已經(jīng)成熟成為了編程界的主流語言,至少主流在向Ruby前進。

【51CTO獨家特稿】隨著計算機的快速發(fā)展,編程語言也越來越多,在10年因為開發(fā)速度的問題,Java成了編程語言的老大,隨著Java不斷的臃腫與復(fù)雜,開發(fā)者也不斷的去尋找,嘗試各種新的語言,也因近年動態(tài)語言有后來居上的趨勢,Ruby作為具有動態(tài)類型的解釋型面向?qū)ο笳Z言因此而被開發(fā)者熱捧。革命的年代已經(jīng)結(jié)束。Ruby從1995年至今已經(jīng)成熟成為了編程界的主流語言,至少主流在向Ruby前進。

當然,在這個充滿偏見的語言戰(zhàn)爭年代,或許是一場無意義的比拼,這是哪個語言都無法回避的。從復(fù)雜性問題本身來考慮,為什么說它受到開發(fā)者的熱捧?首先我們來張國外某博客發(fā)起的一次編程語言的投票。

 

從2983個人的投票中我們看到,僅有96人認為Ruby會死,也是上面編程語言中最少的一個。在國外,Ruby已經(jīng)是主流的編程語言,Ruby的開發(fā)理念認為解決問題的方法可以不止一種,選擇哪種取決于程序員的喜好。

在舊金山的獨立開發(fā)者Sara Mei就一直用Ruby開發(fā)大量的應(yīng)用,在他看來,Ruby的魅力在于它是一個使用起來非常舒服的編程語言,它具有許多強大的元編程功能。

為什么選擇Ruby而不是PHP或者Python之類的語言呢?

 
【圖 TIOBE的Ruby流行度趨勢】

從圖片上我們看到了Ruby從06年開始關(guān)注Ruby的人漸漸增多,在國外udemy 博客中Renee就做了個詳細的對比,重點介紹了三個當今最流行的編程語言。

【點擊擴大】
 

從這張圖片上看在可用性方面Ruby無疑是超越了PHP和Python這兩種語言,PHP是屬于比較傳統(tǒng)的,可用性較弱些;Python相對來說稍微好點;Ruby的優(yōu)勢在于代碼編寫優(yōu)雅、強大和表達性好,可用性極高。

如何理解這個可用性?

Ruby,它是有歷史的“人”

為什么說Ruby是有歷史的?因為Ruby它是一門借鑒了前輩的語言,它站在了巨人的肩膀上,引入了C,C++,Lisp,Perl等等語言的特性。Ruby它也是一門支持多種平臺的語言,像Java一樣,可以運行在Linux及其它UNIX變體、Windows平臺、MAC、BeOS等等。更重要的事,Ruby沒有指針。和Java類似,同時也向惡狠狠的瞥了C++一眼!不知道是否追求簡單和速度,Ruby也就不存在于法和調(diào)試指針所帶來的頭疼困擾。

Ruby,它有著女人的優(yōu)雅

用優(yōu)雅來形容Ruby最好不過了,因為它完全具備了語法簡潔,靈活性強,多樣性這三個特征。

語法簡潔:更純正的面向?qū)ο笳Z言,也就是說,所有的一切(包括字符串或整形之類的基本數(shù)據(jù)類型)都是以對象的形態(tài)來表達的。許多功能讓從Java/C++世界過來的人耳目一新;

靈活性強:如模塊的混入,塊,開放式的類定義,加上已有的動態(tài)性使其變得極其靈活;各種繁多的著名設(shè)計模式在它手中好象都失去了意義,Java做夢都想達到的靈活性在Ruby手中輕而易舉;

多樣性:Ruby可以完成好Kornshell和C語言能夠完成好的事情。想快速寫一個十行的hack程序來完成一次性的任務(wù),或者為遺留代碼寫個wrapper嗎?用Ruby沒問題。想寫一個Web服務(wù)器、CGI,或者棋類游戲嗎?用Ruby也沒問題。

小結(jié):

Python和Ruby雖然作為同個時代的動態(tài)編程語言,在開發(fā)的語法上以及其社區(qū)的風(fēng)格都有著很大的區(qū)別。當然從它們的編程理念上去理解:Python注重規(guī)范化,統(tǒng)一的解決方法,縮進的強制約束,有利于多人合作;而Ruby注重人性化,閱讀方便,同個問題有著多種解決方法,過多的方法需要使用者自己鍛煉駕馭能力。

如果你是偏重樂趣,偏重人類語言化,那么Ruby無疑是最佳的選擇。

責任編輯:林師授 來源: 51CTO
相關(guān)推薦

2012-11-20 17:44:12

開發(fā)技術(shù)周刊

2012-02-14 09:46:05

虛擬化

2010-01-13 10:19:56

2012-08-02 09:22:38

2013-10-14 13:57:56

2021-03-09 09:36:43

人工智能AI互聯(lián)網(wǎng)

2013-01-11 10:35:00

云計算公共服務(wù)IT

2017-12-29 10:51:35

AI芯片初創(chuàng)

2014-11-10 10:04:25

數(shù)據(jù)中心云計算大數(shù)據(jù)

2012-05-11 09:19:52

2012-12-31 14:02:31

數(shù)據(jù)中心云計算數(shù)據(jù)中心

2023-02-15 15:57:13

網(wǎng)絡(luò)安全網(wǎng)絡(luò)詐騙

2012-12-27 10:06:42

數(shù)據(jù)中心市場

2018-06-14 10:11:40

2011-07-29 18:34:35

云計算標準盲目建設(shè)

2011-09-09 09:46:32

云計算

2020-10-23 19:00:14

人臉識別人工智能AI

2010-01-21 17:05:21

互聯(lián)網(wǎng)

2014-07-10 11:42:25

SAP大數(shù)據(jù)
點贊
收藏

51CTO技術(shù)棧公眾號