yutaponのブログ

javascript界隈の興味あるネタを備忘録的に残しておく場所

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の環境を整備したりしてみたいと思います。 あと記事を書くスキルを上げたい・・