整理Ruby相關(guān)的各種概念(rvm, gem, bundle, rake, rails等)

1. Ruby

Ruby,一種為簡(jiǎn)單快捷的面向?qū)ο缶幊蹋嫦驅(qū)ο蟪绦蛟O(shè)計(jì))而創(chuàng)的腳本語(yǔ)言,在20世紀(jì)90年代由日本人松本行弘(Yukihiro Matsumoto)開(kāi)發(fā),遵守GPL協(xié)議和Ruby License。它的靈感與特性來(lái)自于 Perl、Smalltalk、Eiffel、Ada以及 Lisp 語(yǔ)言。由 Ruby 語(yǔ)言本身還發(fā)展出了JRuby(Java平臺(tái))、IronRuby(.NET平臺(tái))等其他平臺(tái)的 Ruby 語(yǔ)言替代品。Ruby的作者于1993年2月24日開(kāi)始編寫Ruby,直至1995年12月才正式公開(kāi)發(fā)布于fj(新聞組)。因?yàn)镻erl發(fā)音與6月誕生石pearl(珍珠)相同,因此Ruby以7月誕生石ruby(紅寶石)命名。

2. RVM

用于幫你安裝Ruby環(huán)境,幫你管理多個(gè)Ruby環(huán)境,幫你管理你開(kāi)發(fā)的每個(gè)Ruby應(yīng)用使用機(jī)器上哪個(gè)Ruby環(huán)境。
Ruby 環(huán)境不僅僅是Ruby本身,還包括依賴的第三方Ruby插件。都由RVM管理。

參考

3. RubyGems

RubyGems 是一個(gè)方便而強(qiáng)大的Ruby程序包管理器(package
manager),類似Redhat的RPM。它講一個(gè)Ruby應(yīng)用程序打包到一個(gè)gem
里,作為一個(gè)安裝單元。無(wú)需安裝,最新的Ruby版本已經(jīng)包含RubyGems了。

4. Gem

Gem是封裝起來(lái)的Ruby應(yīng)用程序或代碼庫(kù)。
注:在終端使用的gem命令,是指通過(guò)RubyGems管理Gem包。

參考

5. Gemfile

定義你的應(yīng)用依賴哪些第三方包,bundle根據(jù)該配置去尋找這些包。

6. Rake

Rake是一門構(gòu)建語(yǔ)言,和make類型。Rake是用Ruby寫的,它支持自己的DSL用來(lái)處理和維護(hù)Ruby
程序。Rails用rake擴(kuò)展來(lái)完成多種不同任務(wù),如數(shù)據(jù)庫(kù)初始化、更新等。


  Rake is a Make-like program implemented in Ruby. Tasks and dependencies are specified in standard Ruby syntax.

參考

7. Bundle

相等于多個(gè)RubyGems批處理運(yùn)行。在配置文件gemfile里說(shuō)明你的應(yīng)用依賴哪些第三方包,他自動(dòng)幫你
下載安裝多個(gè)包,并且會(huì)下載這些包依賴的包。


  Bundler provides a consistent environment for Ruby projects by
  tracking and installing the exact gems and versions that are needed.

  Bundler is an exit from dependency hell, and ensures that the gems
  you needed are present in development, staging, and production.
  Starting work on a project is as simple as `bundle install`

參考

8. Rack

以Ruby為語(yǔ)言編寫的輕量級(jí)的服務(wù)。


  Rack provides a minimal interface between webservers that support Ruby and Ruby frameworks.


  # my_rack_app.rb
  require 'rack'

  app = Proc.new do |env|
      ['200', {'Content-Type' => 'text/html'}, ['A barebones rack app.']]
  end

  Rack::Handler::WEBrick.run app

  > ruby my_rack_app.rb
  [2015-12-14 23:27:19] INFO  WEBrick 1.3.1
  [2015-12-14 23:27:19] INFO  ruby 2.2.2 (2015-04-13) [x86_64-darwin14]
  [2015-12-14 23:27:19] INFO  WEBrick::HTTPServer#start: pid=84264 port=8080
  localhost - - [14/Dec/2015:23:27:43 CST] "GET / HTTP/1.1" 200 21


參考

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 說(shuō)明本次redis集群安裝在rhel6.8 64位機(jī)器上,redis版本為3.2.8,redis的gem文件版本為...
    讀或?qū)?/span>閱讀 15,598評(píng)論 3 9
  • 朋友失戀 安慰了他好久 好久不熬夜的自己又重新熬了夜 因?yàn)榭匆?jiàn)他就像看見(jiàn)當(dāng)初的自己一樣 打心里心疼 喂 聽(tīng)好了 以...
    汐漾_閱讀 236評(píng)論 0 0
  • 看紅塵誰(shuí)羨無(wú)憂,醉里東坡,夢(mèng)里莊周。煮肉天涯,劈棺欞柩,契闊皆休。 舞清影秋江酌愁,弄飚風(fēng)北海優(yōu)游,不勝瓊樓,竅笑...
    沙子666閱讀 470評(píng)論 3 4
  • 變得越來(lái)越負(fù)能量了 和朋友愉悅的相聚總會(huì)碰到江湖人稱傻白甜的在我眼里裝傻充愣的無(wú)知者 或許人人都想要刷新一下自己的...
    IandMe閱讀 236評(píng)論 0 0
  • 甘南除了拉卜楞寺,若爾蓋花湖,年寶玉則神山,還有這樣的一處秘境——扎尕那。扎尕那入選中國(guó)十大”非著名山峰“,著有“...
    心安處即歸途閱讀 423評(píng)論 0 0

友情鏈接更多精彩內(nèi)容