@@ -4,11 +4,12 @@ title: "函式庫"
4
4
lang : zh_tw
5
5
---
6
6
7
- 多數程式語言有著許多廣泛的第三方函式庫 ,Ruby 也受益於許多第三方函式庫 。
7
+ 和多數程式語言一樣 ,Ruby 也仰賴大量第三方函式庫 。
8
8
{: .summary}
9
9
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 ] 。
12
13
13
14
有些其他的函式庫透過把** 原始碼** 壓縮成 .zip 或 .tar.gz 的形式發佈。通常可以透過
14
15
閱讀 ` README ` 或 ` INSTALL ` 檔案,根據步驟來安裝。
@@ -21,17 +22,17 @@ lang: zh_tw
21
22
22
23
使用 ` 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 ] 。
23
24
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。
25
26
26
- [ ** The Ruby Toolbox** ] [ 6 ] 使得尋找開源 Ruby 專案非常簡單。按照許多常見的開發任務分類,蒐集專案許多的相關資訊,像是版本發佈歷史 、提交活躍度、函式庫相依的軟體、與其它類似專案的流行程度比較(在 GitHub 與 RubyGems.org 上的流行程度),讓你輕鬆找到想找到的函式庫 。
27
+ [ ** The Ruby Toolbox** ] [ 6 ] 使得尋找開源 Ruby 專案非常簡單。它依據各種常見開發任務進行分類,並整理出專案的豐富資訊,包括版本更新歷史 、提交活躍度、相依函式庫,以及在 GitHub 和 RubyGems.org 上的受歡迎程度。這讓你可以更輕鬆地找到合適的函式庫 。
27
28
28
29
### 更多關於 RubyGems 的說明
29
30
30
31
以下是 ` gem ` 命令的快速回顧。關於 ` gem ` 命令的所有使用方式,請查閱[ 更詳細的文件] [ 7 ] 。
31
32
32
33
#### 搜索可用的 Gem
33
34
34
- ` search ` 命令可用來搜尋 Gem,根據傳入的關鍵字。比如輸入 ` html ` 會返回與 ` html ` 相關的 Gem(按字母排序) :
35
+ ** search** 命令可用來搜尋 Gem,根據傳入的關鍵字。比如輸入 ` html ` ,會列出所有名稱以 ` html ` 開頭的 Gem:
35
36
36
37
{% highlight sh %}
37
38
$ gem search -r html
@@ -46,7 +47,7 @@ html-sample (1.0, 1.1)
46
47
47
48
#### 安裝 Gem
48
49
49
- 找到 Gem,就可以安裝。安裝最流行的 Rails 看看 :
50
+ 確定要安裝的 Gem 之後,例如最受歡迎的 Rails,可以這樣安裝 :
50
51
51
52
{% highlight sh %}
52
53
$ gem install rails
@@ -58,8 +59,6 @@ $ gem install rails
58
59
$ gem install rails --version 5.0
59
60
{% endhighlight %}
60
61
61
- RubyGems 提倡語義化版本,請參考 [ Semantic Versioning 2.0.0] [ semver ] 。
62
-
63
62
#### 列出所有的 Gem
64
63
65
64
列出本機安裝的所有 Gem:
@@ -76,27 +75,24 @@ $ gem list -r
76
75
77
76
#### 尋求幫助
78
77
79
- 輸入 ` gem help ` 可查看 ` gem ` 命令的說明文件terminal:
78
+ 輸入 ` gem help ` 可在終端機中查看 ` gem ` 指令的說明文件:
80
79
81
80
{% highlight sh %}
82
81
$ gem help
83
82
{% endhighlight %}
84
83
85
- ` gem help commands ` 可查看特定子命令的說明,如 ` gem help install ` 。
84
+ 例如輸入 ` gem help commands ` 可列出所有子指令;輸入 ` gem help install ` 則可查詢安裝指令說明 。
86
85
87
86
#### 打造自己的 Gem
88
87
89
- RubyGems.org 上有關於[ 多篇教學文件] [ 3 ] ,推薦使用 [ Bundler] [ 9 ] 來將函式庫打包成 Gem。Bundler 是管理 application 軟體相依的工具 ,同時可搭配 RubyGems 一起使用。
88
+ RubyGems.org 上有關於[ 多篇教學文件] [ 3 ] ,推薦使用 [ Bundler] [ 9 ] 來將函式庫打包成 Gem。Bundler 是用來管理應用程式相依函式庫的工具 ,同時可搭配 RubyGems 一起使用。
90
89
91
90
92
91
93
92
[ 1 ] : https://rubygems.org/
94
93
[ 2 ] : https://rubygems.org/pages/download/
95
94
[ 3 ] : http://guides.rubygems.org/
96
- [ 4 ] : http://rubyforge.org/
97
95
[ 5 ] : https://github.com/
98
96
[ 6 ] : https://www.ruby-toolbox.com/
99
97
[ 7 ] : http://guides.rubygems.org/command-reference/
100
98
[ 9 ] : http://bundler.io/
101
-
102
- [ semver ] : http://semver.org/
0 commit comments