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

PHP vs Ruby vs Python:三種編程語言誰最強?(下)

譯文
開發 后端
編程語言種類繁多,每一種語言用來處理具體而獨特的任務。每種語言都有一套獨特的關鍵字和特殊語法來組織管理程序命令。我們在本文中將逐一介紹三種大受歡迎的語言:PHP、Ruby和Python。

【51CTO.com快譯】上期完成了對PHP和Ruby的介紹,這次為大家具體介紹Ruby與前兩個語言的不同,誰在使用它們,以及每種語言受歡迎的程度。

Ruby:解釋型的、純粹的面向對象編程語言

Ruby(編程語言)經常與Ruby on Rails(或簡稱rails)在一起,后者是一種開源全棧Web應用程序框架。它是一種動態、命令式的面向對象編程語言,由日本的松本行弘(Yukihiro Matsumoto)開發。這種語言受到了Perl、Eiffel和Smalltalk的影響。它有動態類型系統和自動內存管理功能。

Ruby:解釋型的、純粹的面向對象編程語言


(1)Ruby的優點
  • 和PHP一樣是開源的
  • 適用于多個平臺
  • 可以嵌入到超文本標記語言(HTML)中
  • 一種甚高級語言(VHLL)
  • 提供了將數據方法封裝在對象里面的功能
  • 純粹的OOP(面向對象編程)
  • 超豐富的字符串和文本處理技術/方法
  • 很容易連接DB2、MySQL、Oracle和Sybase等數據庫
  • 用Ruby編寫的可擴展程序很容易維護
  • 擁有一套整潔、簡易的語法,讓新開發人員很容易上手
  • 能夠用一套簡單的API編寫多線程的應用程序
  • 提供了高級的數組類
  • 能夠用Ruby或C編寫外部擴展庫
  • 允許“保留字”用作標識符,只要解析器并不覺得有歧義,但是不太建議這樣做。
  • 更好的安全功能
  • 它有調試器
  • 它有靈活的語法
  • 功能強大的字符串處理機制
(2)Ruby的缺點
  • 很難學會
  • 缺少信息資源
  • 相比其他編程語言,處理時間(CPU時間)比較長
  • 開發和更新比較慢
(3)誰在使用Ruby?
  • Google Sketchup
  • 37signals
  • GitHub
  • Shopify
  • Indiegogo
  • Basecamp
(4)受歡迎程度
據Ruby官方網站聲稱,Ruby躋身于全球十大最受歡迎的編程語言排行榜(比如TIOBE指數)。其迅猛發展主要歸功于用Ruby編寫的軟件大行其道,尤其是Ruby on Rails Web框架。
 
(5)語法
所有Ruby文件都會有擴展名“.rb”。使用/usr/bin目錄下的Ruby解釋器,你就可以運行Ruby代碼。
 
 
  1. #!/usr/bin/ruby -wputs"Put something here"; 
 
 
學習一種新的編程語言很費時間,也很乏味。.Net開發人員會跳出來說“我為啥要學?我是專業的.Net開發人員,平日的工作讓我沒時間來學習一種新的編程語言。”
 
但實則不然。你可以從新的編程語言當中學到許多知識,如果它們對其他經過優化的語言加以完善,更是如此。Ruby就是這樣一種語言。我同樣認為,由某種編程語言方面的開發新手變成專業人員確實不易,但你會感謝這番經歷。現在我只想告訴大家:如果你堅持使用Ruby,那么不會吃虧。樂觀些!

(6)Ruby是什么?
 
如上所述,Ruby是一種完善的語言,它結合了眾多編程語言的思想和方法。Ruby出色地融合了Python易于理解的流程、Smalltalk的優雅性和Perl簡單易學的語法風格,同時也是一種高級的面向對象編程語言(如今的大多數編程語言都是如此),它是在上世紀90年代中期出現在日本的,現在Ruby已逐漸開始在歐美也更流行起來。
 
Ruby以動態類型系統和自動內存管理著稱。我說的動態類型是指,Ruby程序中的大多數類型檢查是在運行時執行的,這意味著你沒必要為整數和字符串類型而操心。Ruby會為你做這項工作。我們會在后面的一個簡短例子中深入探討這個話題。
 
推出Ruby的基本目的是讓人們很容易了解代碼與機器交互。Ruby之父松本行弘堅持認為,設計Ruby的初衷是提高程序員的工作效率,而不是優化機器。

(7)Rails是什么?
 
Rails是用Ruby編寫的一種極其高效的應用程序框架,由David Heinemeier Hansson開發。據說,相比用基于Java的應用程序框架來開發,用Rails開發的Web應用程序其速度要快十倍。Rails是基于Ruby的開源框架,它可用于快速的數據庫集成。
 
Rails以打破常規的概念著稱,因此避免了約定,采用了一種動態編程結構。應用程序的基本代碼和更新后的數據庫始終含有Rails從頭到尾執行程序所需要的一切。
一個基本的Ruby程序
 
看看輸入這段代碼會有怎樣的結果:
代碼:
 
  1. personal = “I don’t love my girlfriend” 
  2. puts personal 
 
輸出:
 
  1. I don’t love my girlfriend 
這實際上會將結果打印輸出到控制臺。沒有初始化、分號和主要方法。
現在,不妨看一下我們要翻轉字符串時PHP與Ruby在編程方面的簡單區別:
 
PHP:
 
  1. strrev(“string”); 
  2. Ruby: 
  3. “string”.reverse 
 
哇!你的字符串馬上就會翻轉。看一下用這兩種編程語言來實現的難易程度。基于Ruby的編程語言讓你很容易編寫程序。它更像用英語來編寫,而不是用編碼語言來編寫。它是編程語言的未來。


(8)Ruby(和Rails)的優點
我知道Ruby這個世界很大,我連皮毛都未觸及,一篇小小博文根本不足以探究Ruby的世界。因此,我們不妨直接介紹Ruby的優點:
  • 優雅――正如我在前面指出,這個優點正是Ruby的強項。作為一種編程語言,Ruby超優雅,幾乎就像英語。正是由于類似英語的這個優點,新手也很容易上手Ruby,不必害怕。
  • 簡潔而強大――上面的例子本身就解釋了Ruby代碼有多簡潔。代碼盡可能簡短。另外,Ruby與其他任何語言一樣強大,因為它是面向對象的高級編程語言,就像其他新潮的編程語言那樣。
  • 從不重新發明輪子――Rails(Ruby)是一種編程接口,它根本不會讓你重新發明輪子。它生成的代碼可反復地重復使用。
  • 內置測試――Rails以用具(harness)和示例數據(fixture)著稱,它們充當支持代碼,因而讓程序員更容易編寫測試用例。另外,Rails創建簡單的測試樁模塊(test stub),這些樁模塊可以由程序員來擴展。
  • 開發、測試和生產環境――Rails巧妙地在三個不同的環境(即開發環境、測試環境和生產環境)下啟動你的項目。這三個環境用起來彼此略有不同,各自補充原始的軟件開發生命周期。

(9)展示時間
現在,不妨看一下幾個使用Ruby來實現的總體比較優秀的網站(其實是知名網站)。你會看到設計人員如何借助Ruby在眾多網站中脫穎而出。
 
A List Apart
 
Basecamp

PHP vs Ruby vs Python:三種編程語言誰最強?

CrunchBase

PHP vs Ruby vs Python:三種編程語言誰最強?


Github


 
那么,哪種是我該使用和學習的最佳編程語言?
 
你從大多數程序員會聽到的答案是“你用它們都可以處理各項任務。”它們都是不錯的選擇。沒有好壞之分。這總是取決于你想完成什么樣的任務。
如果你邁出一步學習一種編程語言,那么很可能會使用內置框架來用于你的項目。基本上來說,Web框架讓你更容易開發應用程序。大多數網站都有一系列共同的功能(比如處理會話和數據驗證),框架可以防止你每當創建網站時重寫這部分內容。
 
如果你已經有了深入了解,PHP有幾種CMS框架可供使用。最流行的PHP內容管理系統(CMS)是WordPress、Joomla和Drupal,大多數有豐富的插件。你可以輕松編寫新的CMS,只需要耐心地看完幾天的教程。
 
還有其他相當好的框架,但是使用流行框架提高了迅速找到支持或找到所需插件的可能性。就Python而言,有Django和CherryPy這兩種Web框架,它們為你提供了相當不錯的工具包。
如果你選擇了Ruby,你認為你受到的限制性會大一點(因為這種語言比較新),但其基本框架是Rails。你還需要考慮哪種語言提供最出色的支持,那樣萬一你在代碼方面遇到了問題,可以迅速找到答案。
  • PHP是用于編寫HTML頁面的最佳語言。
  • Python是一種通用編程語言。它可以用于構建從Web應用程序、爬蟲程序、守護進程到桌面GUI應用程序的幾乎一切程序。
  • Ruby最擅長快速構建數據實體的Web應用程序,那樣你可以專注于特別功能,而不是插入、更新和刪除這些查詢操作。
就是這樣。但愿你已大致了解了要學哪種編程語言。
 
原文標題:The Three Programming Languages in a Nutshell
文章審核人:回憶的翅膀  

【51CTO譯稿,合作站點轉載請注明原文譯者和出處為51CTO.com】

 

責任編輯:陶家龍 來源: 51CTO
相關推薦

2017-01-20 16:55:13

編程PHPRuby Python

2017-02-24 19:08:48

PythonPHPRuby

2017-04-21 10:16:07

web語言Python

2017-09-12 14:35:08

PythonRubyWeb

2022-07-25 17:44:59

編程計算機

2018-05-07 08:54:34

GolangPython語言

2017-04-11 15:15:20

CentOSPHP拓展安裝

2025-01-26 10:29:04

2010-07-15 14:15:58

最強Linux超級計算

2025-03-24 13:17:11

2018-09-08 09:25:05

編程語言PythonVS Code

2018-09-06 12:30:40

編程語言PythonJava

2018-10-10 14:21:06

Python 工具程序員

2022-03-29 07:33:21

內網穿透工具

2012-08-07 10:02:06

JSP

2009-12-04 15:42:57

PHP文件緩存

2025-03-26 02:55:00

2019-04-28 13:59:31

蘋果高通5G

2022-05-23 09:11:18

AngularBlazor前端

2019-03-01 09:36:25

ReactAngular開發
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 91伦理片 | 羞羞的视频免费在线观看 | 欧美一区二 | 国产99久久| 国产乱码精品一区二区三区av | 日本一区二区三区视频在线 | 久久综合九色综合欧美狠狠 | 亚洲欧美日本在线 | 国产激情一区二区三区 | 成人99 | 亚洲第一视频网站 | 一区二区国产精品 | 高清欧美性猛交xxxx黑人猛交 | 午夜免费网站 | 国产精品极品美女在线观看免费 | 国产一区二区三区在线免费观看 | 波多野结衣一二三区 | 欧美高清视频一区 | 国产成人精品免费视频 | h肉视频 | 精品91av| 亚洲精品二三区 | 久久蜜桃资源一区二区老牛 | 91精品国产一区 | 亚洲 欧美 另类 综合 偷拍 | 国产精品99 | 国产a区| 91亚洲欧美 | 国产日韩一区 | 2019精品手机国产品在线 | 国产精品永久免费 | 国产精品一区二区久久久久 | 在线免费观看成人 | 天天操天天怕 | 国产亚洲欧美在线 | 天天操综合网站 | 久久精品国产一区 | 久久亚洲精品国产精品紫薇 | 国产丝袜人妖cd露出 | 国产午夜精品一区二区三区嫩草 | 亚洲精品成人网 |