Edited at

【環境構築】プログラミング未経験者がローカル開発環境を構築するための基礎知識

More than 3 years have passed since last update.


はじめに

開発環境を構築するためのチュートリアルやツールのまとめ記事はよくありますが、「なぜ」という視点からまとまっている資料がなかったので、作成してみます。

具体的な作業内容やツールの使い方は記載していません。

随時更新予定です。


そもそもローカルとは

ローカルとは、インターネットなどのネットワーク越しに存在する環境ではないという意味です。

ざっくり言ってしまえば、個人のPC内部は基本的にローカルな環境です。

あなたが自分のPC内にあるエクセルやパワーポイントなどのファイルを操作するときは、ローカルで作業しているわけです。


インターネット上にサービスを公開するために

この記事を読んでいる方は、WebサイトやSNSなどのアプリケーション開発に興味があるのだと思います。

インターネット上にそれらのサービスを公開し、ブラウザ経由で誰もがアクセスできるようにするためには、インターネットに接続されたコンピュータ、つまりサーバーが必要です。

サーバーはレンタルサーバーやVPS, クラウドなどいくつかの種類がありますが、多くの場合はLinuxというOSにより動作しています。

しかし、私を含め多くの方はWindowsかMacいずれかのPCを使用しています。

これらはそれぞれWindows, OSXといったOSを搭載しています。

もちろんそういった環境で開発をすることはできますが、結局サービスを公開するにはLinuxで動作するサーバーに、プログラムが記述されたファイル群をアップロードしなければなりません。

そして、WindowsやOSX上で正しく動作したからといって、Linux上でも正しく動作するとは限りません。

そのため、開発する環境(自分のPC)と、公開する環境(サーバー)のOSを揃える必要があります。


仮想化ソフトウェア

ここで登場するのが、VirtualBox をはじめとする仮想化ソフトウェアです。

これを使用することで、自分のPC内に、コンピュータ(仮想マシン)を作成することができます。

つまり、WindowsやMacを使用している人でも、同一PC内にLinuxで動作するコンピュータを持つことができるのです。

このLinux上で開発をすることで、先ほどの"OSが異なる問題"が解決します。


ターミナル

仮想化ソフトウェアで作成した仮想マシンに接続し、作業を行うために使用するのがターミナルです。

ターミナルとは、通信回線などを通じて他のコンピュータなどに接続し、もっぱら情報の入力や表示などを行なうソフトウェアの総称です。

具体的なソフトウェアとしてはインターネット上で配布されている TeraTerm や、Macに標準でインストールされている Terminal などがあります。

ターミナルを使用して仮想マシンにアクセスし、ファイルを作成し、プログラムを記述していくのです。


Vagrant

仮想化ソフトウェアとターミナルがあれば、仮想マシン上での開発をすることができますが、それを手助けしてくれるのが Vagrant というソフトウェアです。

Vagrant をインストールすると、仮想化ソフトウェアでの仮想マシン作成や起動、アクセスといった作業を、非常に簡単なコマンド入力で実現することができます。

Vagrantでは仮想マシンに関する情報を Vagrantfile と呼ばれる設定ファイルに記述しており、これを参照して仮想マシンの構築を行います。

すなわち、Vagrantfile を共有することで、複数人で全く同じ環境の仮想マシンを構築することができ、チームでの開発にも役立ちます。


環境構築の際によく目にするツールをざっくりと

名称
概要
備考

Terminal
コンピュータをコマンドで操作するためのツール
Macにはデフォルトでインストールされている

TeraTerm
同上
WindowsユーザーがTerminalの代わりに使用するケースが多い

VirtualBox
仮想マシンの作成や管理を行う

Vagrant
VirtualBoxを通じた仮想マシンの構築を便利にする

Cyberduck
仮想マシン上のファイルへのアクセスを容易にする

Transmit4
同上
有料

※初心者にとって情報過多にならないよう説明を絞っています


参考情報

ドットインストール/ローカル開発環境の構築 [Windows編]

ドットインストール/ローカル開発環境の構築 [MacOS X編]