17

誰かがJavaで例を見たり、次のことをしたことがありますか:http: //duganchen.ca/single-page-web-app-architecture-done-right/

これは、Javaテクノロジーを使用したDRYの大規模な違反なしに、Google SEOで動作する単一ページのWebアプリの設計ですか?

自分でこれを行うのはそれほど難しいことではないようですが、誰かがSpringまたはJAX-RSのいずれかですでにそれを行っているかどうかを知りたいと思いました(そして怠惰でした)。

4

3 に答える 3

8

クライアント上ですべての HTML を生成する、非常に大きな「単一ページ」のJavaScript Web サイトを構築しました。サーバーは JSON のみの応答を提供します。次の理由でGoogle Closure ツールを使用しました。

  • Google Closure Templatesを使用すると、高レベルのテンプレート言語 (soy という名前) でテンプレートを設計できます。この言語は、クライアントで実行する純粋な JavaScript 関数またはサーバー サイトで実行する Java コードにコンパイルされます。

  • Google Closure Compiler。JavaScript コードをモジュールに分離し、コンパイルされていないモードで自動依存性注入を提供します。単純な html 装飾を超えるプロジェクトには、優れたプログラム構造とモジュール化が必要です。これは、jQuery や dojo などのフレームワークでは実現が困難です。高度なコンパイル モードでは、JavaScript をより効率的な同等のものに変換し、デッド コードを排除し、サイズを大幅に縮小します。これにより、元のコードベースを元のサイズの数 % に縮小できます。

  • Google Stylesheetsは、クロージャ コンパイラとうまく連携するメタ css 言語です。

  • Google Closure Libraryは、十分にテストされた巨大な JavaScript ライブラリであり、クロージャ コンパイラを使用すると、必要なものだけを取得できます。

開発を効率化するために、元の Closure Compiler チームのメンバーの 1 人で元 Google 社員の Michale Bolin によって書かれたplovrを使用しています。

Michale の著書Closure, the Definitive Guideを読むことをお勧めします。

注意しなければならないのは、最初の学習曲線はかなり急勾配になる可能性があることですが、苦労する価値は十分にあります。Google はこのツールを使用して、ほぼすべての Web プロジェクトを作成しました。

あともう一つだけ

あなたが本当に冒険好きで、未来をのぞき見したいのであれば、前者の戦略を Clojure/ClojureScript にアップグレードすることをお勧めします。まず、Rich Hickey の非常に説得力のある講演を見て、 Clojurescript one projectを確認してください。

于 2012-05-10T07:27:31.330 に答える
0

高度なAJAXの使用法としてAribaWEBをお勧めします。

http://aribaweb.org/

于 2012-03-21T12:05:51.110 に答える
0

ItsNatを見てみましょう。これは、Single Page Interface SEO 互換の Web サイトに焦点を当てた Java フレームワークです。

于 2014-01-28T21:02:38.057 に答える