Sails.js と Meteor - それぞれの利点は何ですか? [closed] 質問する

Sails.js と Meteor - それぞれの利点は何ですか? [closed] 質問する

私は Nodejs とそのフレームワークについてたくさん読んでいて、最近、初めての完全な JavaScript フロントエンド (Angularjs を使用) を完成させました。

私の次の個人的なプロジェクトは、次の 2 つのフレームワークのいずれかを使用した Nodejs アドベンチャーにしようと決めました。

両方について読みましたが、まだその違いや、どちらを選ぶべきかがよくわかりません。ですから、最高のセールスマンの帽子をかぶって、フレームワークを選んで、私に売ってください。

私のプロジェクトに必要な機能は次のとおりです。

  • ライブスコア
  • Redditのようなスレッド、リアルタイム
  • Wikipediaのようなページ編集
  • ユーザー/役割

ベストアンサー1

Meteor について語ることはできませんが、Sails は私が作成したものなので、その背景について少し説明することはできます。

要約:SailsはWebのあらゆる問題の万能薬ではありませんが、Node.jsはそうであると私は信じています。Sailsの目標は、Node.js上に構築された完全でスケーラブルなスタートアップやエンタープライズ向けのアプリケーションを開発するための実用的なフレームワークを提供することです。たわごと「Node.js をあらゆることに使用できるか?」という疑問に対して、Sails がその答えです。


私たちの新しいドキュメント:

Sails は、もちろん Web フレームワークです。しかし、少し考えてみましょう。それは何を意味するのでしょうか。私たちが「Web」と言うとき、それは「フロントエンド Web」を意味することがあります。Web 標準、HTML 5、CSS 3 などの概念、および Backbone、Angular、jQuery などのフレームワークについて考えます。Sails は「そのような」 Web フレームワークではありません。Sails は Angular や Backbone とうまく連携しますが、これらのライブラリの代わりに Sails を使用することは決してありません。

一方、「Web フレームワーク」について話すとき、私たちは「バックエンド Web」を意味することがあります。これは、REST、HTTP、WebSocket などの概念を思い起こさせ、Java、Ruby、Node.js などのテクノロジに基づいて構築されます。「バックエンド Web」フレームワークは、API の構築、データベースとのやり取り、HTML ファイルの提供、数十万の同時ユーザーの処理などに役立ちます。Sails は「そのような」Web フレームワークです。

数年前、私はあらゆることにNode.jsを使うことを決意しました。それは一目惚れでした。私は帆を上に建てました急行そしてソケット.ioこれらは、それぞれのユースケースで最も確立された Node モジュールだったからです (そして今でもそうです)。Sails のリクエスト処理コードは Express と互換性があり、Socket.io を暗黙的にサポートするという追加の利点があります。

Sails は、Angular、Backbone、iOS/ObjC、Android/Java でフロントエンドを構築する戦略、または別の Web サービスや開発者コミュニティで使用される生の API を提供する戦略と互換性があるように設計されています。アプローチを変更する場合 (例: Backbone から Angular に切り替える)、またはまったく新しいフロントエンドを構築する場合 (例: Windows Phone ネイティブ アプリを構築する) でも、Sails アプリは引き続き機能します。すでにご存知かもしれませんが、このアプローチをサービス指向アーキテクチャ (SOA) と呼ぶ人もいます (ジョー・マッキャンこのテーマに関する素晴らしいデッキがあります。

同様に、Sails は、Web サーバーを構築するための他の一般的な規則、つまり標準の MVC 構造、クリーンな API を作成する機能、オープンで構成可能、拡張可能、さらには交換可能なコア モジュールも維持しています。つまり、Sails は、必要な低レベルでユーザーのニーズに合わせてカスタマイズできます。

2013 年、フレームワークの人気は飛躍的に高まり、コンサルティング事業も成長しました。私とコアメンテナーの残りのメンバーは、バックエンド開発を可能な限り迅速かつ簡単にすることに注力を広げました。フック (プラグイン)、テスト、ドキュメントなど、Sails の関連側面は、コアチームと (拡大し続ける) Sails コミュニティ全体の努力のおかげで、この 1 年で大きく進歩しました。ロードマップには、現在も取り組んでいる項目が多数ありますが、Sails は、現在 Node 上で安定して保守可能な MVC 開発を行うための最良の選択肢であると信じています。チームの残りのメンバーと私は、Sails の継続的な保守と機能開発に取り組んでおり、すべてのクライアント プロジェクトで使用しているため、Sails がなくなることはありません。

私は Sails を最高の Web フレームワークにすることに全力を注いでいますが、Node.js を犠牲にするつもりはありません。コア チームと私は Node エコシステムの強化に全力を注いでいます。つまり、NPM を採用し、既存の Node テクノロジーやベスト プラクティスを活用するなどです。それが理にかなっているからというだけでなく、私たちが Node.js 開発者だからです。私たちのすべての取り組みの動機は、Node を置き換えることではなく、よりアクセスしやすくすることです。そのため、奇妙なパラレル ユニバースで Sails を他の言語に変換するか、Sails を完全に捨てて Node を使い続けるかというファウスト的な選択を迫られたとしたら、私は後者を選びます。


追加リソース:

よくある質問|セイルズ101|オリジナルスクリーンキャスト|寄稿ガイド|スタックオーバーフロー

Google グループ|ロードマップ|IRC: Freenode の #sailsjs|ビルドステータス

おすすめ記事