MeteorがRuby on Railsを台無しにする理由



翻訳者から:私はホリバーのために翻訳しているわけではなく、RoRについては知りませんが、RoRの専門家から彼に対する前向きな姿勢を感じています。言語自体とフレームワークの美しさを垣間見ましたが、これはそれについてではありません。 翻訳の目的は、飛躍的に発展しているMeteorに再び注目を集めることです。2014年初頭にリリース1.0を待っています。 すべてが英語のインターネット上で本格的ですが、沈黙はほんの数記事です。



なぜ流星?



2004年にRailsを開始したことを覚えています-これは「魔法の時間」でした-そして、もちろん、レールを使用する理由を少なくとも週1回尋ねられたことを覚えています。 私はいつも同じように答えました。開発者は、このフレームワークが好きです。 この瞬間までに、私は1か月以上Meteorと緊密に連携しており、「なぜMeteorなのか」という質問に答える準備ができていました。



難易度バインディング



クライアントがアプリケーションの作成を要求するとき、それは通常、リッチなインターフェイスのための多くのJavaScriptを備えた複雑でインタラクティブなアプリケーションです。 問題は、レールのようなものの上に構築されたアプリケーションの場合、JavaScriptが技術の開発時期が異なるため、横に縫い付けられた3番目のスリーブのようなものであるということです。 もちろん、開発者がすべてに満足するような方法ですべてを接続するのに数日費やすことができますが、レールは作成され、その構成規則のおかげで非常に広くなりました。 私は、大小を問わず4つの異なるバックボーンアプリケーションに取り組んでおり、それらはすべて異なる構成でした。 全員がnode.js、angularなどを独自に設定する場合、どのようにしてプロジェクトにすばやく参加できますか?



Meteorは、「最新の」パッケージを完全に理解できる便利な方法で組み合わせることにより、この問題を解決します。 jQuery、Handlebars、Node.js、websockets、mongoDB、およびDDPはすべて、アプリケーションを迅速かつ効率的に構築できる適切に編成されたツールに含まれています。 アプリケーションの最も重要な機能(MVP)を3〜4週間で立ち上げましたが、レール上では4〜6週間かかりました。 最近、私たちは完全に新しいプロジェクトのために角度とレールをペアリングするのに2日間を費やしました-クライアントが望んだことをする代わりに、12-16時間の構成をしなければなりませんでした。 経験豊富な開発者に1時間あたり100〜200ドルを支払うと、製品を作成するのに2万〜25,000ドルしかない場合、これらの12時間は非常に価値があります。 最悪のシナリオでは、予算の6%を2つのフレームワークのペアリングに費やすことができます。 また、これには、たとえば、リアルタイムでの双方向のデータ交換を可能にするWebソケットなどのセットアップのコストは含まれません。 これらはすべて、Meteorで無料で利用できます。



注意シフト問題



誰もがマルチタスクは人にとって非常に難しいことを認識してくれることを望みます。あるタスクから別のタスクに切り替えるときに損失は発生しますか? はい、私たち全員、優れた開発者は、いくつかの言語を知っており、それらを切り替えることができますが、AngularからRailsに、またはその逆に切り替えることを余儀なくされると、損失は避けられません。 バックボーンまたは角度のあるアプリケーションを作成し、そこでRailsからデータを取得する必要がある場合、ActiveRecordを介してデータへのアクセスを提供するレールでコントローラーを作成するのに時間を費やす必要があります。 純水の非効率性-脳を前後に切り替えて、あちこちで正しい検証を確実にします。



効率と開発の容易さのために最初から作成された1つの言語と1つのフレームワークで作業できるとしたらどうでしょうか。 セールスマネージャーのようには見えませんが、これは単なる洞察に過ぎず、これが本当に実現できるフレームワークを見るためです。 Meteorはまだテストやスケーリングなどの分野で追いつく必要があることを理解していますが、レール上のルビーでこれらの問題がどのように解決されたかを既に見てきました。したがって、少しの時間と労力があり、すべてが正常に行われると確信しています。



募集



それに直面してみましょう:JavaScriptは、明白な理由でGitHubの#1言語です-それはどこにでもあります。 Javaは90年代に私たちにこれを約束しましたが、それは大きすぎて肥大化していて不快でした(私は大学でしかJavaを使用していなかったと認めます)。 「どこでも」とは、もちろんここで言うブラウザのことです。 最も人気のある言語であることには利点がありますが、主なことは多くの人がそれを知っていることです。



従業員の募集は、大規模な選択がある場合にはるかに簡単になります。 ほとんどすべてのJSプログラマーの助けを借りて、あらゆる構造のMeteorプロジェクトを起動できることを保証します。彼はすべてを素早く学習し、アプリケーションを実行することができます。 これはソフトウェア開発の世界では非常に重要です-構造が過度に複雑であると、開発チームのメンバーを交換することが難しくなり、開発速度が低下します。 ある種の開発者やチームに執着することを好む人はいません。選択肢が多いほど良いことは明らかです。



デザイナーは彼を愛している



シリアル広告で「彼らは彼が好きだ、彼らは本当に彼が好きだ!」 長年にわたり、私は多くのデザイナーと協力して、Rubyのインストール、ファイル構造の説明、静的ファイルの表示方法、SASS / Lessなどの指導を行ってきました。 LessまたはSASSを純粋なCSSよりも少なくしたいデザイナーとは一度も会ったことがないので、私はいつもこれが好きでした。 これは以前にはなかったので、デザイナーがレールを学び始めたときに私が数日も費やさないようにしています。 構造は非常に複雑であり、これらすべてを実現するには時間がかかります。



ジョークを除いて、私たちのデザイナー(以前はレールに慣れていた)は、Meteroにとても夢中になったため、彼自身のイニシアチブでさえ、Meteorアプリケーションの出発点として使用するテンプレートMeteorボイラープレートを作成しました。 さらに、レールにうんざりして、彼は私たちのサイトのデザイン全体をMeteorに移し、開発者の1人に質問をする前に作業の40%を行いました。 考えてみてください。



デザイナーは、コードを作成したりファイル構造を指定したりするために開発者をまったく必要としません。私にとっては、ある種の洞察にすぎませんでした。



細心の注意を払って作成されたソリューション



Meteorは多くのフレームワークの粒子を吸収し、これがあらゆる点で優れたソリューションの作成につながったと思います-彼らはうまく機能するものとそうでないものをよく研究しました。 Meteorのイベント処理は、バックボーンを強く思い出させます-これはまさにバックボーンが大好きなものです! パッケージマネージャーは、NPMとRuby Gemsを非常に思い出させます。誰かがコードを一度書いてそれを再利用できるという事実が好きで、Meteorではとても簡単です。 これらはすべて、websocketsやmongodbなどの高度なテクノロジーと組み合わされ、開発を大幅にスピードアップします。



では、なぜすべて同じ流星ですか?



はい、テクノロジーの早期導入者が力とメインで何かを叫ぶと、すぐに撃つからです。 これは、Angular、Ember、またはバックボーンが突然消滅することを意味するものではありません。いいえ、それらが代わりになり、主に豊富なインターフェースを備えた既存のアプリケーションをサポートします。 すべての開発者と起業家は、間違いなくMeteorに非常に真剣に目を向けるべきです。 市場投入までの時間が短縮され、開発の喜びが10倍に増加します。



All Articles