回答編集履歴
1
修正
answer
CHANGED
@@ -8,11 +8,13 @@
|
|
8
8
|
その場合、自分自身で書いたソースコードと、出来合いのコンパイル済みプログラムであるライブラリを上手く関連付けて最終的な実行ファイルとするように変換をかけます。つまりコンパイル+関連付け、という作業を行っているわけですが、そういう作業のことをさしてビルドという言葉が使われています。
|
9
9
|
|
10
10
|
「サーバーサイドでビルド」というのは、多少難しい考え方になります。
|
11
|
+
やっていることはクライアントでやっていることと変わりませんが、なぜわざわざ「サーバーサイドでビルド」という表現になっているかというところが説明が必要なポイントかと思います。
|
12
|
+
|
11
13
|
通常(ここで言う通常というのも難しいのですが)は、サーバー内ではプログラムのビルドはしません。しない文化が常識の時代が長かった、という言い方のほうが正しいかもしれません。
|
12
14
|
色々と背景はあるのですが、例えば開発用に専用のソフトを買う必要があり、そのライセンスの関係でサーバー内で開発を行うことはできないルールにしているなどの理由があるかと思います。総じて、「サーバーでプログラム開発(コンパイルやビルド)をするメリットが特にない」からということになります。
|
13
15
|
そういう環境化では、基本的には開発環境と呼ばれる別の端末等においてプログラムをビルドし、サーバーにコピーして動作させる、という文化が通常でした。
|
14
16
|
|
15
|
-
ただし今は色々な環境変化により、例えばGitHubなどへのmasterブランチへのコミットをトリガーとして、自動的にビルド(コンパイル)~
|
17
|
+
ただし今は色々な環境変化により、例えばGitHubなどへのmasterブランチへのコミットをトリガーとして、自動的にサーバー内でビルド(コンパイル)~運用系へのプログラムの配置~本番運用開始・・・といったことを自動化することによって享受できるメリットが大きいようになってきました。
|
16
|
-
そういった、「開発環境でいったんビルドする」という
|
18
|
+
そういった、「開発環境でいったんビルドする」ということが不要だ、というような意味をこめての「サーバーサイドでビルド」という表現になっていると思います。そこにどれだけの意味やメリットがあるかというのは、上記のような背景を知っていないとなかなか把握できないと思います。
|
17
19
|
|
18
20
|
ちなみにリンク先で紹介されているJenkinsとは、上記のような作業の自動化を支援してくれるツールです。
|