3

オンラインスケジューラのようなWebアプリケーションを開発したい。(はい、100万回行われていることは知っています。)私の経験のほとんどはJavaであるため、テクノロジーを検討する際にそれを活用したいと思います。

私は主にUIプログラミングにほとんど触れていないシステム開発者でしたので、ここでほとんどの学習を行う必要があると思います。

私が焦点を当てるべき技術について何か提案はありますか?市場性があり、習得しやすい技術に焦点を当てたいと思います。

これまでのところ、これは私が3層アーキテクチャに必要だと思うものです(ゼロから):

  • データベース(MySQLまたはPostgreSQLの可能性が高い)-SQL、JDBC
  • バックエンドサーバー-Java
  • Webサーバー(Tomcat)-JSP、サーブレット
  • Webフレームワーク-タペストリー(これに弱い、より良い代替案はありますか?)
  • ブラウザ技術-HTML、Javascript、CSS(学ぶ必要がある)

FlexやSilverlightなどの「リッチインターネットアプリケーション」開発ツールについて聞いたことがありますが、そのような技術の市場についてはよくわかりません。

編集:Spring / Hibernateについて多くの言及があるようですので、それを調べます。フィードバックに感謝します。

4

6 に答える 6

3

私はあなたがあなたの基地をかなりうまくカバーしていると思います。

おそらく、いくつかのフレームワーク/ライブラリを調べて、簡単にすることをお勧めします。

Webフレームワーク-Wicket/Stripes / JSF / Tapestry(コンポーネントとリクエストベースのフレームワーク)

Javascriptライブラリ-JQuery/YUI / Dojo

テンプレート言語としては、JSP / Velocity/Freemarkerを使用できます。

フレームワークとツールについて調べて、いくつか試してみて、どれが最適かを確認してください。

参考までに、現在使用しています。

  • Apache-Webサーバー
  • Tomcat-サーブレットコンテナ
  • MySQL-データベース
  • ストライプ-リクエストベースのWebフレームワーク
  • YUI-ajax用
  • 春-依存性注入
  • Hibernate-オブジェクトリレーショナルマッピング
  • jsp-htmlを動的に生成します
于 2009-04-23T21:27:35.203 に答える
3

Rich Internet Application の市場が存在しないという点については、異論を唱えざるを得ません。実際、企業規模のアプリケーションが RIA として作成される傾向が高まっています。通常の Web アプリケーションに対する RIA の利点は、使いやすさです。Web アプリケーションのすべての利点を利用しながら、デスクトップのようなユーザー インターフェイスを維持できます。

あなたは、Java のバックグラウンドを持ち、Web テクノロジの経験があまりないと言います。あなたは、GWTまたはIT Mill Toolkit (GWT に基づく) のいずれかの理想的なユーザー候補のように思えます。どちらも Java だけでリッチなインターネット アプリケーションを作成できるフレームワークです。HTML や JavaScript のスキルは必要ありません。アプリケーション用の独自のテーマを作成するには、CSS を学習する必要があります。

どちらのフレームワークもオープン ソースであり、商用利用に適したスイートです。IT Mill Toolkit と GWT の違いは、それがサーバー主導であることです。つまり、ビジネス ロジックは、クライアント ブラウザーの JavaScript としてではなく、サーバー上で実装および実行されます (GWT の場合)。このサーバー主導のアーキテクチャにより、アプリケーションはソフトウェア セキュリティの観点から非常に安全になります。IT Mill Toolkit に対する GWT の利点は、より大きなユーザー コミュニティです。

ORM フレームワークに関して言えば、Hibernate は非常に人気があります。ただし、Java Persistence API を技術的に実装していても、常に期待どおりに動作するとは限らず、多くの休止状態固有の注釈を使用する必要があるため、あまり好きではありません。休止状態 (悪いこと!) であり、必要に応じて別の JPA プロバイダーに簡単に切り替えることはできません。JPAを実装するAntoher ORMフレームワークはEclipseLinkです. 私はエンタープライズ サイズのアプリケーションで EclipseLink を個人的に使用したことはありませんが (まだ使用する機会がなかったため)、小規模なプロジェクトに使用していて、非常に優れているようです。EclipseLink はオープン ソースであり、そのライセンスは商用利用に適しています。EclipseLink は Oracle によって継続的に開発されているため、その背景はしっかりしています。実際には、Oracle のクローズド ソース JPA 実装である TopLink に基づいています。

お役に立てれば :)

于 2009-05-01T05:04:57.260 に答える
3

個人的には、 Springをこのリストに追加したいと思います。依存性注入は間違いなく学ぶべき優れたテクノロジであり、私の経験では、Spring では好きなだけ使用できます。

単体テストについて明示的に言及していませんが、それは確かにミックスの一部である必要があります.JUnit以外で実際のテストフレームワークとしての経験はあまりありませんが依存関係をモックするためのEasyMockJMockもあります.

それはどれもウェブ固有のものではありませんが、それでも重要なものIMO :)

于 2009-04-23T21:29:41.547 に答える
2

少し前に基本的に同じ質問をしましたが、いくつかの非常に役立つ回答がありました。

ウェブサイト開発用ツール

于 2009-05-04T09:42:52.340 に答える
1

Spring を使用する場合は、MySQL に移動する Hibernate を使用するだけで、必要なものすべてをそこに置くことができます。

あなたがそれを書いた後、それを改善し始めたいと思ったら、ブラウザ側でもっとやろうと思うかもしれませんが、最初は ajax 呼び出しなしでそれをしたいかもしれません.

必要に応じて、Spring MVC、Spring Framework、Spring Webflow、Spring Security など、オプションで使用できる Spring の多くの部分があるため、Spring Framework のドキュメントが役立つ場合があります。

于 2009-04-23T22:13:37.963 に答える
1

Java バックエンドを使用する場合は、JPA にHibernate 、フロントエンドにRichFaces (AJAX/スキニング) およびFacelets (ビュー レンダリング/テンプレート) を使用する JSF、およびすべてをまとめるSeamをお勧めします。素晴らしい組み合わせです。

于 2009-04-23T21:49:02.983 に答える