O que você gosta sobre Django?

votos
7

Comecei a aprender Django há poucos dias, e como eu mergulhar nele parece que eu estou começando a gostar ainda mais.
Tentando migrar de outra língua. Eu não vou dizer qual, como o propósito desta questão é a de não bater qualquer coisa.

Então eu gostaria de saber sua opinião sobre Django.

O que você gosta sobre isso?
O que fez você mudar / usá-lo?
Quais recursos você gostaria que ele tem que não estão lá?
O que faria você mudar para ele?
Qual é a velocidade-lo em produção?
Quão difícil é para dominá-lo?

Publicado 30/10/2008 em 15:41
fonte usuário
Em outras línguas...                            


6 respostas

votos
8

O que você gosta sobre isso?

URL despacho: Eu nunca fui um grande fã de "/foo.php" é o arquivo "foo.php" no meu servidor, e se eu quiser URLs mais agradáveis ​​eu preciso mexer com mod_rewrite e manter isso em linha com o que a minha lógica em foo espera.

ORM: Porque 90% + de suas consultas, na minha experiência, não precisa ser escrito à mão. Caching inteligente é muito mais importante para o desempenho, em geral. Você pode sempre cair para SQL cru conforme necessário.

Middleware e Signals: Fácil de estender a maioria das partes do pedido / resposta / fotografia / render ciclo sem tocar código Django em si.

O que fez você mudar / usá-lo?

Ele saiu quando eu estava decepcionado com as ofertas de enquadramento web Python. Uma venda fácil para mim.

Qual é a velocidade-lo em produção?

Hmm, para ser honesto, eu nunca me importei muito. A parte servidor do seu aplicativo é (na minha opinião) sempre o mais fácil de escalar. Contanto que você use 'melhores práticas' e compartilhar nada, tudo que você precisa fazer é adicionar um balanceador de carga de software e você pode adicionar novos servidores web até que a vaca tussa. O primeiro gargalo pessoas geralmente atingida é a carga de banco de dados - mas Django lhe dá APIs grandes cache que ajudam a aliviar isso.

Dito isto, eu só desnatado isto, mas parece mais rápido do que Rails e os frameworks PHP bem conhecidos: http://wiki.rubyonrails.org/rails/pages/Framework+Performance

Quão difícil é para dominá-lo?

Eu acho que depende de como você define 'master'. A documentação é grande, ao longo de um site de tamanho / app decente que eu acho que você vai usar um pouco de tudo, o que é um grande começo.

Respondeu 30/10/2008 em 15:57
fonte usuário

votos
8

O que eu gosto sobre isso:

  • Muito simples ORM
  • nítida separação de molde / controlador
  • django-admin
  • aplicativos conectáveis: parece-me que a comunidade Django realmente pregado que um!

O que me fez mudar:

  • principalmente curiosidade
  • Eu ouvi um monte de coisas boas sobre ele de um colega
  • Eu queria algo mais leve do que o Java eu ​​faço para ganhar a vida
  • Eu tinha um projeto paralelo fortemente baseada em dados para o qual a interface Django-admin é muito útil

Quais são as características que eu gostaria:

  • melhor controle / mais simples das transações (configurar tipos diferentes de transações (somente leitura / leitura / gravação de alguns ajustes aqui e ali) não é tão fácil como eu estou acostumado. Ter uma sessão no modelo de exibição, onde a transação ainda está em aberto na vista não me faz tudo o que confortável, eu preferiria se as transações não deixou uma camada de serviço. Mas, novamente, não há realmente uma camada de serviço no modelo de Django.
  • melhor modelo para a lógica de negócios (talvez isso é só comigo, mas eu perca a abordagem de java empresa orientada para serviço, eu nunca sei se eu deveria colocar a lógica de negócios na vista, na forma ou no modelo. Nenhum daqueles solução me fazer sentir morno e distorcido ... ao mesmo tempo, eu não tenho lógica de negócio pesado no aplicativo que eu desenvolvo para o momento, e eu provavelmente ainda usam Java para aqueles)
  • estabilidade (no sentido de não alterar, não no sentido de não deixar de funcionar). Mais uma vez, vindo de Java, onde eu ainda estou trabalhando em Java 1.4 para uma série de projectos, tendo um projeto que acaba de ser lançado 1.0 e todo o refactoring que foi com ele não é muito tranquilizador. Ele demorou algum trabalho a seguir tronco e usando 0,96 não era particularmente atraente. Eu não acho que eu me sentiria confortável para usá-lo em um projeto empresarial de missão crítica ainda.

Eu percebo que há algumas melhorias que eu gostaria. Não me interpretem mal, eu amo Django e vou cumpri-lo por um monte de projetos. Eu só não vai colocá-lo em todos os lugares ainda ...

Respondeu 30/10/2008 em 15:57
fonte usuário

votos
4

O que você gosta sobre isso?

  • os modelos, especificamente o recurso de herança, foi incrível depois de lidar com jsps
  • não ter que escrever sql mais

O que fez você mudar / usá-lo?

Um amigo tinha vindo a seguir o seu progresso antes de ser lançado ao público, e eu tenho usado para projetos pessoais desde então.

Quais recursos você gostaria que ele tem que não estão lá?

Sei que isso não é um problema trivial, e eu acho que o Google verão de códigos foram gastos sobre isso, mas eu gostaria de ver melhores maneiras de evoluir a db (que rails parece fazer um bom trabalho de).

O que faria você mudar para ele?

Eu já usá-lo em casa, e eu não tomar essas decisões no trabalho.

Qual é a velocidade-lo em produção?

Eu nunca ter problemas, embora na maior parte Django parece ficar fora do caminho, por isso o desempenho parece mais baseada em python ou db.

Quão difícil é para dominá-lo?

A documentação é bastante surpreendente, e as pessoas o suficiente usá-lo que as respostas são muitas vezes disponível quando isso não ajuda. Além disso, quando eu tive que ir para o código-fonte, tem sido limpo e documentado bem, então eu diria que é mais fácil de dominar do que a maioria dos frameworks, baseado na web ou de outra forma.

Respondeu 04/11/2008 em 22:03
fonte usuário

votos
4

gostos

A excelente documentação. Juntamente com a ajuda do stackoverflow eu aprendi muito em apenas alguns dias. É escrita em Python. Ele tem a maravilhosa contrib.admin que é ainda modular e extensível para incorporá-lo no aplicativo web adequada.

Ódios

Nada até agora. Eu ainda estou encantado

Interruptor

É o meu primeiro framework web, de forma que nenhum interruptor. Depois de usar Python por alguns anos Django parecia a seleção natural para mim, principalmente pelo seu design limpo.

Respondeu 30/10/2008 em 23:26
fonte usuário

votos
3

gosta:

  • Pythonic (eu posso facilmente Grokar a língua) e, assim, estender qualquer parte facilmente
  • Documentação,
  • comunidade (eu pertenço a um francês e eles são muito agradável)
  • uma carga completa de projectos em torno dele
  • mecanismo de teste full-integrado. Você quase pode testar um aplicativo inteiro sem disparar um navegador web, apenas por escrever testes.
  • os comandos personalizados apenas rocha. Ele permite que você execute tarefas personalizadas com muita facilidade, em um piscar de olhos. Costumo usá-lo para executar tarefas em lote (limpeza de um banco de dados, por exemplo, ou a verificação de integridade em um servidor de produção - Testes de usar seu próprio banco de dados, não os dados reais na sua aplicação).

Por que mudar?

  • se cansou de PHP a partir do zero.
  • tinha um RSI na parte de trás da minha mão, muito doloroso. após a mudança para uma linguagem livre de ponto e vírgula, ela desapareceu (é verdade!)
  • muito mais sólida developpement (TDD), e mais rápido (você pode buid um CMS em minutos) - como muitos outros framework web, no entanto.

Não gosta:

  • não suave migração do modelo de dados. Muitas vezes você tem que mudar seu modelo por causa de uma característica inesperada. Isso é doloroso, e você tem que construí-lo com a mão, e isso pode ser arriscado, por vezes.

Como difícil de dominar?

  • Se você já tem as habilidades Python, você pode construir coisas em poucas horas.
  • Se não o fizer, primeiro mergulho em Python (heh) - que iria demorar alguns dias.
  • "Dominar" pode demorar algum tempo ... E muitas vezes você descobrir gemas em documentação Django que vai fazer você gritar "Eu amo Django!" (Bem, funciona para mim)
Respondeu 05/11/2008 em 12:46
fonte usuário

votos
3

Eu não tinha tido a oportunidade de usá-lo muito. Dito isto, a minha parte favorita absoluta de Django é construído no console de administração.

Respondeu 30/10/2008 em 16:03
fonte usuário

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more