node.js をセットアップし express フレームワークを使って Hello World。Gitもセットアップしてバージョン管理。
松陰 (以下、松) 今日はどないした?
コドみん (以下、コ) わしな、ロボット作りたいねん。
松 ええな。どんなロボット作るねん。ドラえもんか?コロ助か?
コ ドラえもんは無理やろうな。コロ助なら設計書があればだれでも作れる聞いたで。
松 まぁね。30年前くらいに小学生が作ってたみたいやからね。でも設計書がどこにあるかわからんよ。
コ インターネットさんに落ちとらんかね?
松 探せばたくさんあるやろな。でもせっかくだから、設計書から作ってみるのもええかもな。
コ そうやね。でも、設計書つくるの面倒やから、まずは手を動かしながらやってみるよ。
松 ええね。最初にやることは決めたん?
コ まずは、ロボットさんもインターネットさんの頭脳を借りれるように、サーバが必要やと思うねん。
松 いきなりそっち?まぁ、ええわ。3年先のことはわからんがね、node.jsというもん使っとけば、何かと便利みたいやで。
コ じゃそれセットアップするよ。
松 まずは Hello World じゃな。
========== node.js で Hello World
・公式からインストーラをダウンロードし、起動してポチポチ進みインストール
・任意のディレクトリに ログを出力する js ファイルを作成し、コマンドプロンプトで
ファイルの場所まで移動して、「node 作成したファイル名.js」を実行
・コマンドプロンプトに Hello World が出力されることを確認
==========
コ できたで。
松 スタックなしかいな。便利な世の中やな。ほな、次は node.js のwebアプリフレームワーク expressさん行ってみよか。
さらに、アプリのひな型も作ってくれる express application generator が便利みたいなんでそれを使ってみような。
コ よくわからんがインターネットさんに聞きながらやってみるで。
========== node.js & express で Hello World
・公式にある Express application generator の手順にそってポチポチ
http://expressjs.com/en/starter/generator.html
・ポチポチするコマンド
npm install express-generator -g
express 作るアプリ名
cd 作るアプリ名
npm install
set DEBUG=作るアプリ名:* & npm start
・ファイル、「作るアプリ名/views/index.jade」 に「p Hello World !!」の一行を追加し、ブラウザで以下にアクセス
・ブラウザにHello Worldが表示されることを確認。
==========
松 あとはな、作ったもんの記録をとったり、わしが手伝いで参加できるようにバージョン管理をしよう。
コ あの、だれがファイルをいじったか記録が残るやつやね。ドラえもんの道具の「記憶掘りだしビデオ」みたいなやつね。
松 そんなんあるんやね。まぁ、記録だけじゃない便利な機能がたくさんあるけどね。
コ ドラえもんの道具ほどではないでしょうな。
松 どうやろ?比べてみんとわからんなぁ。Gitというのが定番みたいやね。
コ 定番というと、どこでもドアみたいな感じかね?
松 そういうことかもしれへんなぁ。Subversion はタケコプターかね。まぁ、やってみい。
========== Git のセットアップ
・公式からWindows用インストーラを入手し、exeをポチポチ
https://git-for-windows.github.io
・新しくからのディレクトリを作成し、Git GUIアプリで、作成したディレクトリを選択しリポジトリを作成する。
・node.js & express で作成したアプリファイル群を丸ごと、リポジトリに移動
・Git GUIで rescan → stage change (unlock indexする必要あるかも) → コメントを入力して Commit
・Repositoryメニューのvisualize master historyを選択し、さっきのコメントと追加したファイルの一覧が表示されていることを確認。
・Pushは省略。。
==========
コ できたで。でも、なんか入り組んでるんやね。。
松 まぁ、今は、深く考えんでもええで。今はいつでも使える準備ができたというだけでええやろ。
コ そやね。きりがないもんね。
松 そやで、これを必死に覚えても、10年後には新しいものにわかってて GIT 自体がなくなってしまっとるかもしれんから。
コ そうなん?そんな感じでSubversionもうじきなくなるん?
松 う、、ん、なんともいえんな。。そりゃ言い過ぎたかね。
コ わからんけどな。ところでリポジトリーってどんな意味なん?
松 倉庫とか、金庫みたいやね。git はろくでなしという意味もあるっちゅううわさや。
コ じゃ、Git Repositoryはろくでなしの倉庫っちゅうわけやね。
松 そうやね。commitは引き渡す。pushは押し付ける。
コ Gitでバージョン管理するときは、ソースをろくでなしの倉庫に引き渡して押し付ける感じなんやね。
松 ある意味、そうなんかもしれんなぁ。
コ きっと、これからも、未来は押し付けあいでできていくんやろなぁ。
========== 今日の単語
ろくでなし : git
倉庫 : repository
引き渡す : commit
押し付ける : push
*例文
日 : 彼女は彼氏がろくでなしだったので、警察の倉庫に引き渡して、押し付けた。
英 : Her boyfriend was a git. So, she committed him to the police repository, and pushed.
==========