Part22:Mix

凛「じゃ、今回はMixの話にゃ!」
希「開発用のツールやったっけ?」
凛「プロジェクト作成からテストまで面倒を見てくれるプロジェクト管理ツールだよ」

凛「早速だけどWindowsだとうまく動かなかったから、Windows+Cygwinの人は.bashrcにこう書くといいにゃ」

凛「使える状態になっていれば、起動するとこうなるはずだよ」

海未「ここまでは大丈夫そうです」

凛「早速プロジェクトを作ってみるにゃ」

凛「これで必要なファイルは全部できたから、あとは要所要所編集していくだけで出来上がりにゃ!」
海未「これだけで、ですか?」
凛「そうだよ。最近のツールは頭がいいにゃ~」

  • README.md
    • プロジェクトの説明(Markdown形式)
  • .gitignore
    • バージョン管理下に置く必要のないファイルのデフォルト設定
  • mix.exs
    • プロジェクトの設定
  • config/*
    • アプリケーションの設定
  • lib/*
    • アプリケーションのメインロジック
  • test/*
    • ユニットテスト

凛「こんな構成にゃ」
希「設定ファイルも全部Elixirで書いてあるんやね」

凛「設定からやっていくにゃ。まずはmix.exsを開いて、アプリケーションのメインモジュールがどれかを指定するにゃ」

希「Fizzbuzzはlib/fizzbuzz.exにあるやつかな」
凛「うん。空のモジュールを生成してくれてるから、これからそこに処理を書いていくんだよ」

凛「まずはここまででビルドしてみるにゃ」

凛「うまくいくと、fizzbuzzってファイルができてるはずにゃ」
海未「ありますね。これが実行ファイルでしょうか」
凛「そうなんだけど・・・」

凛「mainって名前の関数が必要にゃ。これはお約束だよ」

凛「とりあえず何もしない実装をしてみると・・・」

凛「これでエラーは出なくなって、雛形はできあがりにゃ」
海未「あとは実装ですね」
凛「FizzBuzzっていう伝統芸能みたいなプログラムがあって、3の倍数の時にはハラショー、5の倍数の時にはちゅんちゅん、3と5の公倍数の時にはにっこにっこにー☆と出力するらしいにゃ」
希「いや絶対嘘やろそれ」

凛「これをビルドして・・・」

凛「完成にゃ!」
海未「ずいぶん簡単でしたね」
凛「こういうツールは、規模が大きくなるともっとありがたみがわかってくるはずにゃ」

凛「次回も、凛が続けていいかな?」
希「今度は何やるん?」
凛「Mixを使ってね、ユニットテストが簡単に作れるんだよ」
海未「そういえば、テストコードも生成されていましたね」
凛「だから、ユニットテストをやってみるにゃ!」


LINEで送る
Pocket


返信を残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です