公式サイトで説明されているMeteorの特徴
Meteor 1.2がリリースされてからMeteorの公式サイトもリニューアルされました。
その中のWhy Meteor?のエリアにMeteorの特徴が載っていたので紹介します。なお、内容は執筆時点のものです。
Meteorで開発する
Meteorを使うととても簡単な方法でリアルタイムアプリ(モバイルおよびWeb)を作ることができます。すべてJavaScriptで一つのコードベースから作るこができます。
ユニバーサルJavaScript
同じコードがクライアンとでもクラウドでも動きます。また、パッケージもデータベースAPIも同じコードです。さらに、同じコードで様々なブラウザやモバイルデバイスで動きます。
モバイルとWeb
インストール型のiOSやAndroidアプリとしても動作しますし、ネットワーク型のWebアプリとしても動作します。
リアクティブレンダリング
クライアントのGUIコンポーネントによってリッチなクライアントアプリができます。これにはMeteorのBlazeフレームワークを使うか、AngularJSやReactJSの連携を使います。
Galaxyによるサービス提供
Meteorのクラウドプラットフォーム「Galaxy」はデプロイ、規模拡張、接続クライアントの監視のすべてを簡単にします。
接続クライアントの操作
Galaxyではサービスに接続しているクライアントの管理ができ、規模拡張の操作が正常に機能しているか確認できます。
ホットデプロイ
一つのコマンドでアプリをプロダクションリリースするこができ、すべての接続しているブラウザやデバイス、AppStoreのアプリまでもが更新されます。
バージョンアップデートコーディネート
Galaxyはクライアントのバージョンアップがシームレスで自動的になるように調整します。アプリが動作中でも可能です。
楽しいアプリ
ユーザが楽しくなるアプリを、楽しいプラットフォームで作りましょう。
最小限のコード
リアクティブプログラミングのおかげでこれまで1000行だったコードが10行になります。データベースからユーザのスクリーンまでの道のりをすべてリアクティブにします。
オプティミスティックUI
Meteorは遅延を考慮した解決機能を持つデータ転送を提供します。データに変更があると更新情報が影響するクライアントに伝達されます。これはLivequeryとフルスタックDBドライバとminidatabaseによって実現されます。
統合と柔軟性
Meteorの統合された構造により、開発者はそれぞれの機能を統合管理したりコーディングする必要がなくなります。そのためアプリ開発に集中できます。また、Meteorのパッケージシステムにより、追加機能を持った何千ものライブラリを利用することができます。
感想
これだけの説明で伝わるのか分かりませんが、これが公式サイトでうたわれている特徴ですので、少なくとも網羅感はあるかと思います。個別の特徴についてはさらに詳しく調べるのがよいでしょう。
もし誤訳など見つけましたら、ご連絡ください。Slack