@@ -4,11 +4,12 @@ title: "函式庫"
44lang : zh_tw
55---
66
7- 多數程式語言有著許多廣泛的第三方函式庫 ,Ruby 也受益於許多第三方函式庫 。
7+ 和多數程式語言一樣 ,Ruby 也仰賴大量第三方函式庫 。
88{: .summary}
99
10- 多數函式庫以 ** Gem** 格式發佈。 [ ** RubyGems** ] [ 1 ] 是 Ruby 函式庫打包系統,特別針對新建、分享、
11- 安裝函式庫而設計(某種程度上與套件管理系統 ` apt-get ` 很相似,但針對的是 Ruby 軟體的發佈)。從 Ruby 1.9 起,Ruby 內建 RubyGems,1.9 以前的 Ruby 得[ 手動安裝] [ 2 ] 。
10+ 這些函式庫幾乎所有都會以 ** Gem** 的形式發佈,** Gem** 是可安裝的函式庫或應用程式的封裝格式,透過名為 [ ** RubyGems** ] [ 1 ] 的工具進行管理。
11+
12+ RubyGems 是為了簡化函式庫的建立、分享與安裝而設計的 Ruby 專屬套件管理系統(某種程度上類似 apt-get,但專門針對 Ruby 軟體)。從 Ruby 1.9 起,Ruby 內建 RubyGems,1.9 以前的 Ruby 得[ 手動安裝] [ 2 ] 。
1213
1314有些其他的函式庫透過把** 原始碼** 壓縮成 .zip 或 .tar.gz 的形式發佈。通常可以透過
1415閱讀 ` README ` 或 ` INSTALL ` 檔案,根據步驟來安裝。
@@ -21,17 +22,17 @@ lang: zh_tw
2122
2223使用 ` gem search -r ` ,可以對 RubyGems 的 Repository 做查詢。比如要找 rails,輸入 ` gem search -r rails ` 會返回與 Rails 相關的 Gem。` --local ` (` -l ` ) 選項可搜索本機與 Rails 有關,已安裝的 Gem。要安裝一個 Gem,使用 ` gem install [gem] ` 。瀏覽已安裝的 Gem 可輸入 ` gem list ` 。更多關於 ` gem ` 命令的說明,請參考下文,或直接查 [ RubyGems 的文件] [ 3 ] 。
2324
24- 除了 RubyGems.org 之外,也有其它的站點可查找函式庫。 [ RubyForge ] [ 4 ] 曾經是 Ruby 函式庫的家,但近年來 [ ** GitHub** ] [ 5 ] 的興起,GitHub 成為了 Ruby 相關資源的主要 Repository。現在,通常 Gem 的原始碼會放在 GitHub,而 Gem 會發佈到 RubyGems.org。
25+ 除了 RubyGems.org 之外,還有其他來源可以找到函式庫。 [ ** GitHub** ] [ 5 ] 是目前 Ruby 相關內容的主要原始碼儲存庫。多數情況下, Gem 的原始碼會託管在 GitHub 上,同時發佈為完整的 Gem 至 RubyGems.org。
2526
26- [ ** The Ruby Toolbox** ] [ 6 ] 使得尋找開源 Ruby 專案非常簡單。按照許多常見的開發任務分類,蒐集專案許多的相關資訊,像是版本發佈歷史 、提交活躍度、函式庫相依的軟體、與其它類似專案的流行程度比較(在 GitHub 與 RubyGems.org 上的流行程度),讓你輕鬆找到想找到的函式庫 。
27+ [ ** The Ruby Toolbox** ] [ 6 ] 使得尋找開源 Ruby 專案非常簡單。它依據各種常見開發任務進行分類,並整理出專案的豐富資訊,包括版本更新歷史 、提交活躍度、相依函式庫,以及在 GitHub 和 RubyGems.org 上的受歡迎程度。這讓你可以更輕鬆地找到合適的函式庫 。
2728
2829### 更多關於 RubyGems 的說明
2930
3031以下是 ` gem ` 命令的快速回顧。關於 ` gem ` 命令的所有使用方式,請查閱[ 更詳細的文件] [ 7 ] 。
3132
3233#### 搜索可用的 Gem
3334
34- ` search ` 命令可用來搜尋 Gem,根據傳入的關鍵字。比如輸入 ` html ` 會返回與 ` html ` 相關的 Gem(按字母排序) :
35+ ** search** 命令可用來搜尋 Gem,根據傳入的關鍵字。比如輸入 ` html ` ,會列出所有名稱以 ` html ` 開頭的 Gem:
3536
3637{% highlight sh %}
3738$ gem search -r html
@@ -46,7 +47,7 @@ html-sample (1.0, 1.1)
4647
4748#### 安裝 Gem
4849
49- 找到 Gem,就可以安裝。安裝最流行的 Rails 看看 :
50+ 確定要安裝的 Gem 之後,例如最受歡迎的 Rails,可以這樣安裝 :
5051
5152{% highlight sh %}
5253$ gem install rails
@@ -58,8 +59,6 @@ $ gem install rails
5859$ gem install rails --version 5.0
5960{% endhighlight %}
6061
61- RubyGems 提倡語義化版本,請參考 [ Semantic Versioning 2.0.0] [ semver ] 。
62-
6362#### 列出所有的 Gem
6463
6564列出本機安裝的所有 Gem:
@@ -76,27 +75,24 @@ $ gem list -r
7675
7776#### 尋求幫助
7877
79- 輸入 ` gem help ` 可查看 ` gem ` 命令的說明文件terminal:
78+ 輸入 ` gem help ` 可在終端機中查看 ` gem ` 指令的說明文件:
8079
8180{% highlight sh %}
8281$ gem help
8382{% endhighlight %}
8483
85- ` gem help commands ` 可查看特定子命令的說明,如 ` gem help install ` 。
84+ 例如輸入 ` gem help commands ` 可列出所有子指令;輸入 ` gem help install ` 則可查詢安裝指令說明 。
8685
8786#### 打造自己的 Gem
8887
89- RubyGems.org 上有關於[ 多篇教學文件] [ 3 ] ,推薦使用 [ Bundler] [ 9 ] 來將函式庫打包成 Gem。Bundler 是管理 application 軟體相依的工具 ,同時可搭配 RubyGems 一起使用。
88+ RubyGems.org 上有關於[ 多篇教學文件] [ 3 ] ,推薦使用 [ Bundler] [ 9 ] 來將函式庫打包成 Gem。Bundler 是用來管理應用程式相依函式庫的工具 ,同時可搭配 RubyGems 一起使用。
9089
9190
9291
9392[ 1 ] : https://rubygems.org/
9493[ 2 ] : https://rubygems.org/pages/download/
9594[ 3 ] : http://guides.rubygems.org/
96- [ 4 ] : http://rubyforge.org/
9795[ 5 ] : https://github.com/
9896[ 6 ] : https://www.ruby-toolbox.com/
9997[ 7 ] : http://guides.rubygems.org/command-reference/
10098[ 9 ] : http://bundler.io/
101-
102- [ semver ] : http://semver.org/
0 commit comments