web-dev-qa-db-ja.com

春のmvcとdjangoの違いを知りたい

Java spring mvcとdjangoの主な違いは何ですか?また、どちらが最も好まれますか?

23
Maverick

Webアプリケーションの開発という観点から見ると、アプリケーションのアーキテクチャーに対するアプローチに大きな違いがあるだけです。

Djangoは多くの制約を課す傾向があり、内部で提供されるソリューションの固定セットに大きく依存しています。それから得られるのは、アプリケーションの開発方法に対する慣習と合理化されたアプローチです。ほとんどのフレームワークソリューションは誰にとっても機能し、機能しない場合は、特定のコンポーネントを異なる方法で拡張または再利用する機会がたくさんあります。これは非常にうまく機能しているので、実際には、1つの良いDjangoプロジェクトを一度見たら、それらすべてを見てきました。

一方、春は、制約をできるだけ少なくする傾向があります。 Java= EEプラットフォームの要件を満たすことは別として、アプリケーションを適切な方法で配線する自由があります。実際の動作を提供するために作成するコンポーネントは、フレームワーク自体に緩く結び付けられ、Springが提供する特定のコンポーネントを使用して、それらがどのように検出、配線、管理、消費されるかを管理することになります。問題は、最もカスタマイズしやすいということです。アプリケーションの微細な側面。つまり、多くの決定を下し、すべてのSpring Webアプリケーションが一意に設計されることを意味します。

29

Springには独自のWeb MVCフレームワークがありますが、それだけではありません。

  1. 制御ファクトリーの依存性注入/反転
  2. アスペクト指向プログラミング。
  3. 永続化、リモート処理、およびその他の機能のためのモジュール。

Djangoは、ブラウザUI CRUDアプリケーションを作成するためのPython Web MVCフレームワークです。

Grailsは、Ruby on RailsのようなWeb CRUDフレームワークで、Javaは、Spring、Hibernate、およびGroovyに基づいています)の方が類似していると思いますDjangoの場合、どちらも「コーディング規約」を使用して開発を加速しています。

10
duffymo