it-swarm-pt.tech

apenas curioso para saber a diferença entre spring mvc vs django

Gostaria de perguntar aos mestres por aí quais são as principais diferenças entre Java spring mvc e django? E também ... qual é o preferido mais?

23
Maverick

Da perspectiva do desenvolvimento de aplicativos da Web, há apenas a grande diferença na abordagem da arquitetura de seus aplicativos.

O Django tende a impor muitas restrições e depende muito de um conjunto fixo de soluções que são fornecidas internamente. O que você obtém são convenções e uma abordagem simplificada de como você está desenvolvendo seus aplicativos. A maioria das soluções de estrutura funciona para todos e, quando não, você tem muitas oportunidades para estender ou reutilizar determinados componentes de maneira diferente. Isso funciona tão bem que, realmente, depois de ver um bom projeto Django, você já viu todos eles.

A primavera, por outro lado, tende a impor o mínimo de restrições possível. Além de satisfazer os requisitos da plataforma Java EE, você tem a liberdade de conectar seu aplicativo da maneira que achar melhor. Os componentes que você escreve para fornecer um comportamento real devem estar tão frouxamente ligados à própria estrutura e você acabaria usando certos componentes fornecidos pelo Spring para gerenciar como são descobertos, conectados, gerenciados e consumidos. O problema é que você tem a liberdade de personalizar até o aspecto mais minucioso do aplicativo, o que significa que você tomaria muitas decisões e todos os aplicativos Spring da Web serão projetados de maneira exclusiva.

29
Filip Dupanović

O Spring possui sua própria estrutura MVC da Web, mas é muito mais:

  1. Injeção de dependência/inversão da fábrica de controle
  2. Programação Orientada a Aspectos.
  3. Módulos para persistência, comunicação remota e outros recursos.

O Django é uma estrutura MVC da Web Python web para criar aplicativos CRUD da interface do usuário do navegador.

Eu diria que Grails, uma Ruby na estrutura CRUD da Web do Rails para Java que é baseada em Spring, Hibernate e Groovy) seria uma analogia melhor para Django, ambos usam "convenção sobre codificação" para acelerar o desenvolvimento.

10
duffymo