Meteorの詳細:なぜウェブ開発の未来は

Meteorとは何ですか?



これは別のjavascriptフレームワークではありません。 ダービー、セイル、アンギュラー、バックボーンと同等の位置に置くことは正しくありません。 Meteorは、高度にインタラクティブなモジュール式のクライアント/サーバーアプリケーションを作成するためのプラットフォームです。 マーケティングのスローガンを連想させるような、少し華やかで聞こえるかもしれませんが、実際には、Meteorの使命と現在の状況を非常に正確に反映しています。 ほんの数日前、Meteor APIは最初の安定バージョン(1.0)をリリースしました。



ポータルwww.meteor.comで公式情報を読むことができますが、私が特に気に入っている機能についてお話したいと思います



  1. 1つの言語でロジックを記述します-結果はすべてのプラットフォームで機能します:サーバー、ブラウザー、cordova(Android、IOS)。 当然、機能なしではできませんが、これらは人生の小さなことです。 AppleとGoogleはCordovに大きな可能性を見出し、このテクノロジーのサポートを開発しています。Appleはモバイルアプリでのホットコードプッシュを許可しています新しいChromium WebViewは、Google Playを介して更新され、Webコンポーネントをサポートしています



  2. プロジェクト管理には、堅実な5つに基づいて構築されたコミュニティの価値を理解している賢明で経験豊富な開発者が含まれます。 SFの本部での毎月のdevshopイベント、 stackoverflowによるサポート優れた、常に最新のAPI記述 。 それとは別に、最初のバージョンのリリースに特化した壮大なイベント-Worldwide Meteor Dayに注目したいと思います。 ところで、ロシアでは、イベントはモスクワクルスクの 2つの都市で開催されます。



  3. ファイバーを統合した便利な非同期サーバープログラミング。 Meteorで作業する場合の99%の場合、通常の同期コードを記述し、非同期で動作します! 変なの? 奇妙なことではありません。サーバーメソッドへの各呼び出しは、独自のファイバーで機能し、他の呼び出しの操作には影響しません。 これにより、コード構造が非現実的に簡素化されます。データベースおよびその他の外部リソースへの呼び出しはすべて同期スタイルで書き込まれます。 最近、よく書かれた通常の非同期node.jsアプリケーションのコードを見て、涙が出ました。 他の人がファイバーに精通していない場合、私はそれを強くお勧めします!



  4. コレクションを介してデータを操作するための適切に設計された抽象化。 コレクションは、サーバーとクライアントの同じインターフェイスを表します。これにより、同じスタイルでロジックを実装し、サーバーとクライアント間でコードを共有することもできます。



  5. コールバックで非同期関数を呼び出すように見える、サーバーメソッドを呼び出すためのクールな抽象化も同様です。 サーバーパス、xhr、複雑なコード構造は忘れてください! Meteorでは、すべてが非常に簡単に行われます。



  6. 便利なアプリケーションの展開。 特に、プロジェクトを開始したばかりの場合:コンソールからの1つのコマンドで、プロジェクトは.meteor.comドメインに公開されます。 展開後、your_domain.comに再構成できます。 プロジェクトが成長し、プロフェッショナルホスティングに移行する必要がある場合は、1つのチームを使用して、プロジェクトを1つの依存関係(npm)でnode.jsアプリケーションにアセンブルします。



  7. すべてのルーチン最適化(コードの縮小化、1つのファイルへのアセンブリ)および再コンパイル(less-> css、coffeescript-> jsなど)は、ほとんど設定なしで自動的に実行されます(生まれたばかりの口論とい不満にさよなら)。 一部の操作では、パッケージをインストールする必要があります。これは、コンソールコマンドを1回入力するだけでも実行できます。



  8. REST APIを置き換えるために設計されたDDPプロトコル。 これは非常にシンプルですが、EJSON(拡張JSON)に基づく強力なプロトコルです。 DDPはRPCと双方向のデータ転送(そこから)をサポートし、WebSocketとSockJSの上で実行されます。 また、読みやすく、特に深いデバッグの場合に必要になる場合があります。 ところで、REST APIが必要な場合、誰もそれを使用することを禁止しません。 それどころか、 あらゆる好みに対応するアプローチがあります。 後戻りしたくないだけです。



  9. ベストプラクティスの実施。 Html、css、less、coffeescriptは有効である必要があり(そうでない場合、プロジェクトはコンパイルされません)、テンプレート(スペースバー-ハンドルバーの相続人)、CSS、JSが明確に分離されている必要があります。 サーバーのみ、クライアントのみと共有コード間の明確な分離。 明示的な依存関係(Meteor、npm、cordova)、APIの明示的なエクスポート、および完全なパッケージ分離を備えたパッケージシステムは、node.jsプログラマにとって夢です!




そして、奇妙な設計上の決定なしに、より多くの利点が実現しました。 その結果、ルーチンに気を取られることなく問題を解決できるツールが手に入ります。 現在、将来のプロジェクトのためにnode.jsフレームワークを選択している場合は、Meteorでstopするのをためらわないでください。苦痛は止まり、髪は柔らかく絹のようになります。



文学







我慢できず最後まで通り抜けられなかった人たちにとって:流星は最もクールなものです。 開発者の場合:明日、Meteor開発者が非常に人気を博するため、今すぐ彼と協力してください。 ビジネスマンの場合:1人のMeteor開発者がフロントエンド、バックエンド、iOSおよびAndroid開発者を置き換えます。 いいえ、これは冗談ではありません:成功した投資および(一部の)販売プロジェクトの例: https : //respond.ly/、http//versoapp.com/#verso、http//www.classcraft.com/、http : //blonk.co/、https://lookback.io/



ブー!



All Articles