node.jsとmeteor.jsの違いは何ですか?[閉まっている]


88

だから私はmeteor.jsについてたくさん聞いたり読んだりしています。チュートリアルでは、フレームワークとして非常にスポーティーに見えますが、Webプログラミングに関しては、まだ初心者です。

私は過去1か月半にわたって、node.jsを実際に学び、すべてがどのように統合されるかを理解しようと努めてきました。起動して実行するのがいかに速くて簡単か、それに伴うコミュニティー(Nodeで取得できる驚くほど多くのフレームワークで例証されています)が好きです。

しかし、流星はどうですか?それの本当の利点は何ですか、そして違いは何ですか?誰かがnode.jsユーザーとして開始して「変換」しましたか、それともそれとも好奇心の強い新しいフレームワークですか?

回答:


159

大まかに言えば、「MeteorはNodeに対するもので、RailsはRubyに対するもの」です。これは、サーバー上でノードを使用する大規模で独断的なフレームワークです。ノード自体は、HTTPリクエストを送受信し、他のI / Oを実行するための機能を提供する低レベルのフレームワークにすぎません。

流星は根本的に野心的である:デフォルトでは、それがありますすべてのページは、実際にあるハンドルをサーバーと同期保持のテンプレート。リーダーボードの例を試してください。「名前とスコアを一覧表示する」というテンプレートを作成します。クライアントが名前またはスコアを変更するたびに、ページはそのクライアントだけでなく、ページ。

もう1つの違い:Node自体は安定していて、本番環境で広く使用されていますが、Meteorは「プレビュー」状態です。深刻なバグがあり、Meteorのデータ中心の概念モデル(アニメーションなど)に適合しない特定のことは非常に困難です。

新しいテクノロジーで遊ぶのが好きなら、Meteorを試してみてください。Nodeで構築された、より伝統的で安定したWebフレームワークが必要な場合は、Expressをご覧ください。


2
Meteorは昨年から「深刻なバグ」を改善しましたか?
danorton 2013年

3
@danortonはい、私は間違いなくそう言います。特定のアプリケーションでは、Meteorは非常に実用的であり、開発の絶対的な喜びです。
Trevor Burnham

4
また、Meteorは活発に開発されており、開発時間を短縮するかなりの財政的貢献を得ているので、この回答は最終的に完全に正確ではなくなることに注意してください。
Goddard 2013

12

Meteorは、node.jsの上に構築されたフレームワークです。デプロイにはnode.jsを使用しますが、いくつかの違いがあります。

重要なのは、ノードのモジュールベースのシステムではなく、独自のパッケージシステムを使用していることです。Nodeを使用して簡単にWebアプリケーションを作成できます。ノードはさまざまな用途に使用でき、それ自体では動的なWebコンテンツを提供するのは大変です。Meteorのライブラリーは、これらすべてを簡単にします。


4
バージョン0.6.0は現在、NPMモジュールを直接サポートがあるmeteor.com/blog/2013/04/04/...
マックス・ホッジス

9

Meteorの強みは、リアルタイム更新機能です。これは、現在見ているソーシャルアプリケーションの一部でうまく機能し、作業中のすべての人の更新を確認できます。これらの更新は、WebブラウザーでのローカルミニMongo(クライアント側のMongoDBサブセット)データベースの更新としてカバーの下にあるMongoDBコレクションのサブセットを複製することを中心にしています(これにより、テンプレートで複数のレンダリングイベントが発生します)。複数のレンダー更新に関する後半の部分も弱点です。UIがいつ更新されるか(たとえば、HTMLをロードしてすべてのAJAX呼び出しとUIの更新を制御する従来のjQuery AJAXページ)をUIに制御させたい場合は、このメカニズムと闘うことになります。

MeteorはNode.jsプラグイン(Handlebars.js、Spark.js、Bootstrap cssなどですが、npmの代わりに独自のパッケージ化メカニズムを使用しています)の素敵なスタックを使用して、w / MongoDBに沿って、必要のないストレージレイヤーを作成します。について考える。しかし、場合によってはそれと戦うこともあります...例えば、Bootstrapテーマをカスタマイズしたい場合、Bootstrapのresponsive.cssファイルのロードシーケンスがめちゃくちゃになるため、応答しなくなります(ただし、Bootstrapが実行されるとおそらく自動的に修正されます) 3.0がまもなくリリースされます)。

したがって、すべての「フルスタックフレームワーク」と同様に、アプリが意図したとおりに機能する限り、物事はうまく機能します。その範囲を超えて境界を押し広げると、フレームワークとの戦いに終わるかもしれません...


2
Meteor V0.6.0 +にはnpm統合があります:meteor.com/blog/2013/04/04/…–
Manav Kataria
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.