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

Ruby先驅者談該編程語言之短板

譯文
開發(fā) 后端 前端
作為最初發(fā)布于1995年的動態(tài)語言,Ruby憑借著自身的便捷性優(yōu)勢而受到廣泛好評、并經(jīng)常出現(xiàn)在人氣語言評選的榜單之上。不過多年以來Ruby也受到了不少批評者們的抨擊。面對這一狀況,Ruby社區(qū)中最為突出的兩位成員毫不畏懼,以坦率的態(tài)度笑看針對該語言的攻擊與贊賞。Ruby締造者松本行弘以及Rails締造者David Heinemeier Hansson就該語言作出坦率評論。

[[127558]] 

Ruby締造者松本行弘以及Rails締造者David Heinemeier Hansson就該語言作出坦率評論。

作為最初發(fā)布于1995年的動態(tài)語言,Ruby憑借著自身的便捷性優(yōu)勢而受到廣泛好評、并經(jīng)常出現(xiàn)在人氣語言評選的榜單之上。不過多年以來Ruby也受到了不少批評者們的抨擊。面對這一狀況,Ruby社區(qū)中最為突出的兩位成員毫不畏懼,以坦率的態(tài)度笑看針對該語言的攻擊與贊賞。

Ruby締造者松本行弘與高人氣Ruby on Rails Web開發(fā)框架締造者David Heinemeier Hansson就自己對于Ruby的態(tài)度,接受了InfoWorld本周進行的郵件采訪。

Ruby的優(yōu)勢

松本行弘在談到他一手打造的編程語言的優(yōu)勢與短板時顯得有些沉默寡言。根據(jù)他的說法,Ruby擁有“簡潔特質并提供具備可讀性的代碼。”此外,Ruby還擁有“更出色的抽象化能力,例如面向對象編程、函數(shù)性編程以及元編程等等。”

他同時指出,Ruby的性能表現(xiàn)“對于大多數(shù)用例來說已經(jīng)足夠優(yōu)秀”,而且目前互聯(lián)網(wǎng)上擁有大量與Ruby相關的資源、因此該語言“在全世界范圍內都擁有積極的社區(qū)體系。”在羅列Ruby優(yōu)勢時,松本行弘還提到了Ruby on Rails以及RubyGems包管理器。

與此同時,Hansson則在列舉這款語言的優(yōu)勢時,首先提到“Ruby很明顯高度關注程序員的積極情緒”。“從這一關注重點出發(fā),Ruby擁有理想的使用舒適度以及源自便捷性的突出美感。編寫Ruby代碼是一種簡單而愉悅的體驗,我所使用過的任何一種其它編程語言都無法在這方面與之比肩。”

他同時表示,Ruby語言還包含有多種范式:“Ruby是一種顯而易見的后現(xiàn)代編程語言:它從所有主流編程范式當中汲取到精華。大家可以在必要時利用它實現(xiàn)面向對象開發(fā),而函數(shù)性編程也能在Ruby當中實現(xiàn)。其廣泛的能力以及精妙的編程規(guī)劃原則實在令我感到嘆為觀止。”

Ruby還在發(fā)展與穩(wěn)定之間找到了理想的平衡點,Hansson指出。“Ruby世界可謂發(fā)展迅猛,但卻并沒有快到讓使用者搞不清狀況——就像JavaScript那樣。此外,Ruby的發(fā)展步伐也沒有慢到像Perl那樣趨于停滯、甚至像Python 3那樣根本鮮有人問津。它顯然找到了適合自己的絕佳發(fā)展軌道。”

Ruby的短板

說起劣勢話題,松本行弘表示Ruby的語法可能太過復雜、開發(fā)人員很難一次性將其徹底掌握。此外,Ruby“與Java或者Scala等靜態(tài)編譯語言相比,在速度上處于劣勢”。而且在非Web領域缺少豐富的應用程序與庫,例如研究性計算范疇,不過這個問題正隨著SciRuby項目的建立而逐漸得到解決。

說起速度問題,Hansson坦言“對于一部分特定的利基型應用程序及互聯(lián)網(wǎng)規(guī)模級別來說,Ruby確實算不上最理想的選擇。這種利基性需求與規(guī)模水平如今正變得愈發(fā)淡化、且遠離主流需求,但其仍然客觀存在。如果我們能夠利用Ruby應對一切,而不必再屈就于Go、Rust或者C等系統(tǒng)級語言當然最好,但實際情況卻并非如此。”

與此同時,Ruby的可表達性往往會讓DSL變得“過于聰明”,Hansson指出。“如果大家愿意,完全可以編寫出看起來大體類似于普通英文那樣的Ruby代碼。不過大體類似有時候反倒不如‘完全不同’來得好,AppleScript已經(jīng)用實際教訓向我們證明了這一點。在我看來,一部分非常流行的Ruby庫在這方面似乎有點誤入歧途了。”

英文:http://www.infoworld.com/article/2870966/ruby/ruby-pioneers-come-clean-on-languages-shortcomings.html

責任編輯:林師授 來源: 51CTO.com
相關推薦

2009-03-19 08:44:16

諾基亞Symbian移動OS

2010-03-31 11:23:20

2009-03-21 09:34:53

諾基亞Symbian移動OS

2009-05-07 09:31:40

BorlandMicro Focus開發(fā)工具

2012-11-28 09:21:26

2012-09-29 10:56:37

Google技術先驅

2012-02-13 10:03:31

編程開發(fā)

2009-09-18 14:09:07

2009-09-16 17:29:38

Ruby on RaiDave Thomas

2022-01-24 14:28:41

RailsJavaScriptWebpack

2017-10-13 10:02:12

Java

2009-08-17 10:08:24

2009-09-18 13:12:05

2013-01-09 16:56:35

微信二維碼巨頭

2020-09-08 17:09:49

編程語言后端開發(fā)

2011-11-17 09:20:13

LuaMark Gibbs馬克·吉布斯

2010-03-10 19:46:07

Python編程語言

2021-02-07 09:18:07

JavaScript 前端編程語言

2018-04-15 16:11:57

RubyMatz語言
點贊
收藏

51CTO技術棧公眾號