プログラミング

Elixir / Phoenix の環境構築!HelloWorld!

こんにちは、とだ (cohki0305) です!

今日は今最もアツイと言われる Web フレームワーク Phoenix で HelloWorld しようと思います!

Elixir と Phoenix とは

Elixir は関数型プログラミング言語です。
Phoenix が Elixir で書かれた Web フレームワークです。
つまりは、Ruby と Rails でいうと、Ruby が Elixir で Phoenix が Rails ということです。

Phoenix は今海外で流行っていて、Rails の後継になるのではないかと言われているフレームワークなので、今のうちに勉強しておきましょう!!
※ Rails と非常に似ているフレームワークなので勉強しやすいです。

Elixir / Phoenix のインストール

erlang のインストール

Elixir のインストールを行います。
Elixir は erlang (アーラン) という言語に依存しているので、まずそれをインストールします。

※ homebrew をインストールしていない方はこちらを参考にしてインストールしてください。

Elixir のインストール

次に、Elixir をインストールします。

以下のコマンドでバージョンが表示されていればインストール成功です。

node のインストール

Phoenix には、node 5.0.0 以上が必要です。
もしインストールしていなければインストールしてください

Phoenix のインストール

mix というのは、ビルドツールです。ruby でいうところの bundler です。
※ …master/phx_new.ez でインストールすると、 phoenix.new でエラーを起こします。

途中以下のように聞かれると思うので、Y と入力して Enter を押してください

以下のコマンドを実行してインストールされているか確認しましょう。

Phoenix のバージョンが表示されていれば成功です。

Phoenix プロジェクトの作成

以下を実行して、Phoenix のプロジェクトを作成します。
今回はプロジェクト名を hello_world にします!

--no-ecto オプションは、データベースを使用しない場合につけるオプションです。

実行途中に以下のように質問されるので、Y と打って Enter を押します。

※ これによってライブラリをインストールします。

Hello World

これでプロジェクトが作成されたので、server を起動してみましょう!

プロジェクトのディレクトリに移動します。

Server の起動

ブラウザを開いて、http://localhost:4000/ にアクセスしてみましょう!

以下のような画面が表示されていれば成功です!

HelloWorld の表示

router

/web/router.ex を見ると、以下のように表示されていると思います。

get “/”, PageController, :index

この行に注目しましょう。
これは、”/” にリクエストが来たときに、 PageController の index を実行するという意味です。

Controller

web/controllers/page_controller.ex に以下のようになっています。

ここでは、index メソッドにおいて、”index.html” という Template を表示することを示しています。

Template

web/templates/page/index.html.eex を編集します。
今あるコードを消して以下に書き換えます。

ブラウザで確認

再びブラウザで以下にアクセスしてみましょう!
http://localhost:4000/ 

画像のように表示されていれば成功です!

最後に

以上で説明を終わります!
次回以降は Elixir を使ってもっと凝ったことを出来れば良いなーと思っています。

ABOUT ME
cohki0305
25 歳にして実務経験 1 年でフリーランスエンジニアになり月収 3 倍になった男。独学のみで営業からエンジニアになった経験あり。 未経験からでもエンジニアになる術を多くの人に伝えたいと思ってます!