友達、
あなたの技術スタックは、あなたを救うか、あなたを絞首刑にするロープです。1 人の Web サービス スタートアップの場合、このリストはどのようなロープですか?
プラットフォーム: Google App Engine、バックエンド: Google App Engine データストア、サービスレイヤー: Java、フロントエンド: Adobe Flex
クライアント/サービス統合フレームワーク: GraniteDS、クライアント アプリケーション フレームワーク: Tide (GraniteDS スタックの一部)、サービス アプリケーション フレームワーク: Spring
わかりました、私の文脈を教えてください。
Flextrasは正しいです!テクノロジーは主に知識/インフラストラクチャのために選択されます...これが、上記のリストになった方法です。
まず第一に、FLEX は私にとって魅力的です。リッチな UI を構築するのは簡単で、アドビはそれをデスクトップ、Web、およびデバイスの方向に押し進めています。アドビのマーケティングは、「クリエイティブ スイートの他のツールと統合する」および「どこにでも展開する」という約束を私たちに与えてくれます。(もちろん、真実であるとは思えませんが、彼らは正しい軌道に乗っているようです。) では、UI フレームワークとして FLEX を選択しましょう。
FLEX は、多くの場合、サーバーサイド テクノロジーと統合する必要があります。では、サービス層にはどのテクノロジーを選択すればよいでしょうか? 私は古い PHP を知っていますが、この言語の動的で型付けされていない感覚は、flex と並行して動作するのが適切ではないと感じています。
Flex は、Java から多くのインスピレーションを得ています。そして、ActionScript で考え、Java で考えることは、ちょうどいい感じです。(私は Scala を調べましたが、私のような人がこの素晴らしい新しい言語を採用するためのツールとベスト プラクティスはまだありません)。サーバー側プログラミングとクライアント側プログラミングの間でパターンと知識を再利用できるようになることを期待して、Java を学ぶことにしました。
Java の問題点は、複雑でデプロイが難しいことです (PHP の場合は、安価な Web ホテルに簡単にデプロイできます)。私のアイデアはテストであり、コストとサーバーは必要ありません (誰がしますか?)。自分の考えを探求することに集中したい。そこで私は、スタートアップ Web アプリケーションに無料で Java クォータを提供している Google App Engine を見ています。
Google App エンジンの問題は、それが制限的なサンドボックス モデルであり、多くのフレームワークがそのまま展開されないことです。
最小限のハッキングで連携するテクノロジー ラインが必要です。そこで、Google App Engine で FLEX と Java を統合するための適切なフレームワークを選択できるよう、あなたの専門知識を求めています。
サーバーからクライアントへ強く型付けされたオブジェクトを使用したいので、AMF ソリューションを探しています。フォーラムを見る限り、BlazeDS にはハッキングが必要で、Pimento/Cinnamon は機能せず、Weborb や Adobe Livecykle は無料ではありません。ただし、GraniteDS は、パッチを適用せずに Google アプリ ストアで動作しているようです。
GraniteDS には、サーバーサイド テクノロジーと統合する Tide というクライアント フレームワークが付属しています。しかし、繰り返しになりますが、Google App Engine は制限のある環境です。Seam (Tide との統合に最適な継ぎ目) 継ぎ目は、Google アプリ エンジンのハック ジョブです。EJB3 または CDI は Java EE 6 テクノロジであり、Jetty (Google App Engine を駆動するサーブレット コンテナ) ではサポートされていません。ただし、春の縫い目は実行可能な候補のようです。
Google アプリ エンジンにはリレーショナル データベースはありませんが、Spring と Tide (GraniteDS) の両方がサポートする JPA インターフェースの背後にある新しいデータストアです。
このとりとめのないすべてが私たちのいずれかを賢くするかどうかはわかりません.
私が尋ねたいのは、FLEX から Google App Store まで、どのテクノロジーのラインが、私が首を吊るすのに最も簡単なロープを与えてくれるかということです。Tide/GraniteDS/Java/Spring/JPA をお勧めします。しかし、私がそれを試してみるまで、私は何を知っていますか.