當前位置:編程學習大全網 - 編程語言 - 聽說Ruby 性能不好,為什麽還有這麽多人推薦 Ruby 呢?

聽說Ruby 性能不好,為什麽還有這麽多人推薦 Ruby 呢?

盡管如此,有時候語言本身的差異未必能在壹個具體程序裏體現出來,比如壹個XML流解析程序,用各種腳本語言來做,不應該有太多性能差異,原因是各種腳本語言底層的XML解析庫,實際都是C寫的實現,最終的parser很可能是libxml;這樣壹來,語言本身更多是壹個wrapper,實際跑的核心代碼是C code;所以性能的問題,失去了具體場景單討論語言本身未必有多大意義,還得看項目本身對語言的使用情況。ruby開發的程序員成本真的比其他語言比如python,php更低嗎?壹個熟練ruby程序員和壹個熟練python程序員再壹個熟練php程序員開發同壹組web功能,各自選擇熟練的框架,ruby程序員所使用的man hour壹定最低嗎?我表示懷疑,在熟練的情況下,遵照MVC的原則進行開發,PHP和python本身的開發效率不認為壹定低於RoR;原因是現代的開發框架,設計理念上都是妳中有我,我中有妳;比如就ORM來說,PHP, Python都有成熟的實現,routing,templating這種必須的piece,所有的框架都設計得足夠好,很難說任何壹個超越其余的壹個層次;花多少man hour來實現壹個項目,團隊熟練程度決定大部分,語言本身和框架本身的邊際效用,不壹定有想像的那麽大。另外,我覺得ruby不是好學的語言,至少不比python更好學,比php我覺得要難學得多;概念多,選擇多,對學習者的幹擾也多;這個因素應該已經被壹些公司和團隊意識到了,國內把ruby作為主項目語言的,或者樂意做這種切換的,也只是局限在壹個很小的圈子裏,真正要考量的時候,PHP或者java是更實際的選擇;個人覺得有兩個方面ruby很特別開放的Object系統,所有的對象(包括“類”對象)都可以在runtime修改擴充,這讓在ruby下做壹些事成為自然的可能,而在其他語言則不得不做各種work around;ruby的OO可元編程能力特別強大;ruby的括號是可選的,雖然這看起來只像個語法糖,但要寫DSL的時候,ruby可能是最最自然的語言openfreezerliftelephantputelephantintofreezershutfreezer這樣極致的可讀可懂性,別的語言很難做到不露痕跡。事實上Rake就是壹組DSL,RoR的ActiveRecord是壹個DSL實現;Sinatra的API也是壹組DSL;很多templating language也被實現成DSL;

  • 上一篇:HD6900開曼群島北部島嶼
  • 下一篇:通訊協議的詳細介紹
  • copyright 2024編程學習大全網