express3.2を触ってみる
初投稿になります。
web系のエンジニアしてます、sskyuことyutaponです。
普段はBackbone.jsとかjsRenderとか使ってフロント側のコードを書いてます。
と、前置きはこのくらいにして、今回はnode.js界隈のmvcフレームワークであるexpressを触ってみた感想です。
expressは2.x系しか触ったことがないので、3.x系になってどう変わったか雑感を書いてみます。
(node.jsのバージョンは0.10.5になります)
expressプロジェクトのひな形を作ってみる
expressのヘルプを見てみます。
$ express -h
Usage: express [options]
Options:
-h, --help output usage information
-V, --version output the version number
-s, --sessions add session support
-e, --ejs add ejs engine support (defaults to jade)
-J, --jshtml add jshtml engine support (defaults to jade)
-H, --hogan add hogan.js engine support
-c, --css <engine> add stylesheet <engine> support (less|stylus) (defaults to plain css)
-f, --force force on non-empty directory
テンプレートエンジンにHogan.jsが追加されています。jshtmlは2.x系にあったかな? デフォルトのテンプレートエンジンがjadeなのは2.x系と変わらずですね。
実際にひな形を作ります。
$ express --sessions --css stylus --ejs myapp
create : myapp
create : myapp/package.json
create : myapp/app.js
create : myapp/public
create : myapp/public/javascripts
create : myapp/public/images
create : myapp/public/stylesheets
create : myapp/public/stylesheets/style.styl
create : myapp/routes
create : myapp/routes/index.js
create : myapp/routes/user.js
create : myapp/views
create : myapp/views/index.ejs
install dependencies:
$ cd myapp && npm install
run the app:
$ node app
生成されたmyappディレクトリに移動して、依存パッケージをインストールした後、 サーバーを起動して、localhost:3000にアクセスするとWellcome to Expressの文字が表示されました。
2.x系と違ってroutes/user.jsが生成されている気がします。 app.jsの中の、ルーティング設定を見ると、
app.get('/', routes.index);
app.get('/users', user.list);
とあるので、こういう感じでモジュールを増やして行きましょうといのが読み取れますね。
ここまでのことは公式のチュートリアルを見ながら進めてきました(途中まで)。
次からは実際にアプリを作ったり、tddの環境を整備したりしてみたいと思います。 あと記事を書くスキルを上げたい・・