成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Ruby 1.9版本新特性展示

開發 開發工具
Ruby 1.9版本按照慣例來看,屬于一個實驗版本。這個新版本的出現也許并不能對Python造成太大的威脅,但是它卻預示著Ruby語言的發展潛力。

Ruby語言發展至今已經存在了很多種版本。每種版本的出現都為我們增加了新的功能,展示了Ruby發展的前景光明。宏如約發布了Ruby 1.9版本。#t#

根據Ruby的慣例,小數點后面第一位如果是單數,那么就表明這是一個實驗版本,不推薦用于產品環境。所謂“產品環境”,對于目前的Ruby來說,基本上就是Ruby on Rails。

從目前RoR社群的反映來看,確實有人正在嘗試用Ruby 1.9版本配合RoR,但是尚屬玩票性質。我詢問了一些處在真實項目中的RoR團隊,目前還沒有人打算在自己的項目中使用Ruby 1.9。

在Ruby社群里的半仙級人物Mauricio Fernandez在這里總結了Ruby 1.9的主要新特性,洋洋灑灑的一大篇,充斥著雞毛蒜皮的語法糖衣,我看了半天,愣是沒看到幾個特有意義的東西。其實Ruby 1.9的最重大變化在內不在外,新的虛擬機Yarv把Ruby的性能大大提高了。

在CSDN上的一篇轉載報道中提到,在一個Fibonacci序列的評測對比中,Ruby 1.9的性能較之Python 2.5.1還要快出兩倍。當然,僅憑借一個測試就斷定Ruby 1.9版本的性能快于Python是幼稚的,但是現在可以肯定地說,Ruby腦袋上那頂“速度最慢的動態語言”的大帽子肯定要摘掉了。

有人認為,這下子不得了了,Ruby要稱霸動態語言了。你想想,Ruby已經幾乎擁有了所有夢幻般的語言特性,神奇的動態能力,強大的支持庫,內置的跟Perl可以比肩的正則表達式,Smalltalk級別的純而又純的面向對象特征,簡潔明快的風格,跨語言整合也非常容易,唯一的缺點就是速度慢。現在連這個缺點都被彌補了,Ruby還能擋得住嗎?其他的動態語言都該歇菜了。

雖然我也算是一個Ruby語言的擁護者,但是我并不這么認為。特別是,我不認為Ruby 1.9版本能夠對Python造成實際的威脅,更談不上“趕盡殺絕”。原因很簡單,Ruby是一種魔幻語言,而Python是一種簡約語言,Python的支持者也大多數是簡約主義的忠實信徒。對于他們來說,一種語言越是魔幻,就越無法獲得他們的信任。

什么是魔幻語言呢?這是我杜撰出來的說法。對編程語言進行分類有很多方法,其中人們常用的比如非常“過程式語言”,“面向對象語言”,“函數式語言”等,這是按照在這種語言中原始的看待程序的方式來劃分。還有比如“編譯型語言”和“解釋型語言”,這是按照語言翻譯發生的時間來劃分的,還有一些別的分法。不過我一直覺得,根據語言本身的設計風格和擁護者的氣質也可以把語言劃分成“魔幻語言”和“簡約語言“兩類。

所謂”魔幻語言“,主要代表作品有C++、Perl、Javascript和Ruby。這些語言擁有豐富的特性,聰明的技巧和意想不到的奇效,永遠有發掘不完的奇技淫巧,總能找到讓人匪夷所思的”yet another way"。反過來,“簡約語言”崇尚清晰直接,夠用就行,要求從代碼容易理解,寧可笨一點、累一點、多寫一點代碼,反對出人意料的技巧,反對故弄玄虛。C、PHP、Python和Lua這一派語言的代表作。

而Java和C#從語言設計來說,一開始還是比較簡約的,但是近來越來越魔幻,而且標準庫設計相當繁復。但我傾向于將它們歸于簡約語言一類,因為雖然在其中也有很多技巧,但是這兩種語言社群的總體風格是比較質樸的。VB的傳統是典型的簡約,老式的VB6和VBA都是典型的簡約派,新的VB.NET雖然也能玩出魔幻來,但是根本上還是更親近簡約語言。

魔幻語言通常看上去更加引人入勝,能夠做一大堆讓人目瞪口呆的事情。魔幻語言的擁護者,通常都熱衷于這種智力競賽,他們發掘語言中每一個死角,尋找有趣的技巧組合,一遍遍地尋找更好的方法和思路,對語言層面的技巧如癡如醉,樂此不疲。在魔幻語言的社群里,“語言高手”是備受尊崇的,他們可能不知道怎么響應一個HTTP請求,但是卻能夠用不少于6種方式來寫一個for循環。他們寫的代碼是一種謎語般的藝術,出謎語和猜謎語的人們都能從中獲得巨大的精神滿足。

簡約語言就土多了。通常做一件事情就那么一兩種方法,你真的沒多少花花腸子可繞。光看代碼根本不看不出你的道行,隨便一個受過一點專業訓練的人也能看透你葫蘆里賣的什么藥,在代碼里找成就感,基本沒戲。

當然,這并不是說簡約語言的“能力”要比魔幻語言差,或者是會限制你的思維。相反,簡約語言讓你把注意力集中在哪些真正與問題相關的地方,而不是語言本身的表達方式上。因此從工程上看,簡約語言更適合大規模、協作式的軟件開發。
從長時間的比較來看,簡約語言無疑受到更廣泛的支持。

Ruby 1.9版本中的魔幻語言如果進行有效地控制,也可以以簡約的方式來使用。這其中有兩種途徑,其一是通過有效的限制方式使語言的應用歸于質樸。比如Java和C#本身具有很多魔幻特性,是有資格稱為魔幻語言的,但是整個社群的風氣比較單純,很少人喜歡炫技耍酷,語言的應用風格被有效地限制在一個“簡約子集”之中。

第二條路徑是通過魔幻實現質樸,C++大師Andrew Koenig曾經用這個觀點來為C++的復雜辯護,但是C++在這方面做得并不好。要說這方面的成功案例,Ruby on Rails倒算是一個。RoR在實現中用了很多奇技淫巧,但是在這個框架之上開發Web應用,卻顯得比PHP更簡約直觀,這就是通過魔幻達到簡約的例子。

回到開頭的話題,Ruby是一個典型的魔幻語言,而Python則是簡約派的代表。兩個語言的支持人群在審美觀念和開發風格方面差距非常大。初學Ruby和Python的人,都會感受到一種欣喜和興奮,但是原因卻不太一樣。Ruby的學習者會驚喜于很多新的表達方式,比如 :attr_accessor 之類的魔幻特性,而Python學習者則會驚喜于實現具體功能的簡潔性。

可以說從一開始他們追求的就是不同的東西。隨著學習的深入,Python開發者當然也會發現Python中的不少深入的特性,不過卻并不傾向于濫用它們。長次以往,Python人群對任何語言的魔幻面都會產生一種厭惡感。我認識的一個Django開發者,就明確表示,就算RoR比Django開發效率高一點,也絕不使用Ruby,因為Ruby這個語言充滿了“不必要的小聰明”。

從性能上來說,Python的性能獲得大幅度提升的機會不太大,但我并不相信YARV能夠真的讓Ruby 1.9版本在速度上享有對Python的明顯優勢,兩者的運行時效率最終應當在同一個數量級上,因此,語言的選擇主要還是取決于風格和審美傾向。據此,我判斷Python的開發者不會大規模轉向Ruby,Ruby的發展也不會對Python構成實質的沖擊。兩種語言都將成為最主流的應用開發語言

責任編輯:曹凱 來源: 博客園
相關推薦

2015-07-17 13:43:09

MySQL 5.7

2015-07-17 13:45:12

MySQL 5.7

2015-07-17 13:27:16

MySQL 5.7

2015-07-17 13:59:33

MySQL 5.7

2022-06-27 06:02:27

geopandas開發Python

2010-03-16 14:05:57

Eclipse 3.6

2013-02-25 14:02:07

RubyWeb

2025-02-20 09:52:45

C# 6開發代碼

2016-01-21 11:05:52

ES6JavaScript新特性

2013-02-26 09:36:57

RubyRuby 2.0

2015-11-09 09:52:23

Docker1.9跨主機網絡新特性

2011-07-06 16:38:57

Xcode Preview

2012-09-28 09:58:35

Outlook 201Office 2013

2015-07-20 16:48:53

MongoDB 2.5查詢引擎

2012-11-16 09:50:32

Windbg

2012-03-06 13:45:43

JavaJActor

2010-06-08 09:45:27

openSUSE 11

2012-05-07 23:45:54

FantomJavaJVM

2010-08-26 17:08:20

vsftpd faq

2011-05-25 10:40:12

Windows PhoMango微軟
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 久久久久久国产精品免费免费 | 亚洲av一级毛片 | 精品久久久久久 | 久久久精品一区二区 | 精品国产青草久久久久福利 | 最近最新中文字幕 | 亚洲精品乱码久久久久久蜜桃91 | 色网在线看 | 久久国产精品99久久久久久丝袜 | 欧美在线播放一区 | 一级日韩| 97精品一区二区 | 午夜在线| av中文在线观看 | 亚洲+变态+欧美+另类+精品 | 日日操夜夜操天天操 | 99re在线视频观看 | 国产精品无 | 91综合在线视频 | 亚洲成人免费电影 | 久久久久亚洲精品 | 午夜视频一区 | 欧美日韩在线一区二区 | 日本精品视频在线观看 | 国产乱码精品一品二品 | 国产一区二区三区四区hd | 日韩中文字幕视频在线 | 青青久草 | 久久久精品黄色 | 欧美日韩视频 | 亚洲国产精品久久久久秋霞不卡 | 888久久久 | av在线免费网站 | 亚洲毛片网站 | 免费黄网站在线观看 | 亚洲精品久久久一区二区三区 | 仙人掌旅馆在线观看 | 中文字幕一区二区三区四区五区 | 9999久久 | 超碰精品在线观看 | 在线一区|