(走り訳なので・・・細かいニュアンスの違い・見落としはご容赦ください)
What Is Sails.js?
Sails.js は、エンタープライズレベルの Node.js アプリを簡単に作成することができる。Rails のような MVC フレームワークを真似てはいるけれども、スケーラブルなデータ駆動API、サービス指向のアーキテクチャといったモダンなアプリの要求をサポートする。チャットやリアルタイムダッシュボード、マルチプレーヤのゲームをつくるのに特に向いている。
Features
Sails.js を使えば開発時間は、ぐっと小さくなる。世に出せるレベルのリアルタイムアプリを数ヶ月でなく、たった数週間で作れる!
Sails.js は、他の MVC フレームワークができないことができる:
-
Sails.js は、データベース不可知。 ORM である Waterline は、どのデータベースに対しても動作するシンプルなデータアクセス層を提供する。しなければいけないことは、コミュニティで作られたアダプタをひとつプラグインすることだ。もし、レアないしはプロプライエタリなシステムに繋ぎたいときも、独自のアダプタを書くのはたやすい!
-
Sails.js は、自動的に RESTful JSON API を作成するよ。つまり、シンプルなデータベースアプリであれば、バックエンドのコードを書かなくていいってことだ!
-
リアルタイム Socket.io リクエストは他のすべてと同じように、コンベンションとURLマッピングによって、コントローラにルーティングされる。 リアルタイムアプリにしたい時も、アプリ全体を再作成する必要がないってこと。
-
Sails.js は、既定で基本的なセキュリティ機構とロール制御を提供するし、好きなようにカスタムのポリシーを追加できる。柔軟なマッピングによって、コントローラやアクションに様々なアクセス制御をかけられるし、パラメータのバリデーションも適用できる。そうすれば、ビジネスロジックを書き始める前に、ユーザーに権限があることがわかり、必要なすべてのデータが既に得られていることになる。
-
Express と Socket.io は、同一の設定可能なセッションストアを共有するから、すべてのセキュリティポリシーは WebSocket リクエストでも同様に再利用される。
-
Sails.js は、自動的にアセットのコンパクト化をおこなう。過去には、UI の CSS と JavaScript は手動でリンクしなければならなかったが、Sails.js なら、 適切なフォルダに入れておけば自動的にレイアウトに含まれる。 そして、本番化の準備ができたなら、コンパクト化されgzipが掛けられる。これは CloudFront のような CDN に置き換えることも簡単にするし、ロードを速くする。
as of 2013.5.31