PostgreSQL
 sql >> Base de Dados >  >> RDS >> PostgreSQL

Um projeto PHP, Python, PostgreSQL é adequado para um aplicativo de negócios?


Veja Django .

Código Python. Uma linguagem de modelo que permite alguns dos mesmos recursos do PHP -- sintaxe ligeiramente diferente.

O modelo é divorciado das funções de visualização ("regras de negócios") e divorciado da apresentação. Isso é aplicado em todo o Django.

Uma das perguntas comuns é "por que eu não posso fazer -- alguma coisa maluca do tipo PHP -- no template do Django?" A resposta é que a apresentação não está sendo processada. Faça seu processamento nas funções de visualização do Django. Renderize os resultados como HTML no modelo.

Além disso, o Django tem uma camada ORM para divorciar você de considerações mesquinhas de SQL. MySQL ou PostgreSQL são mais ou menos equivalentes dentro do Django.

Editar

"Maturidade" significa muitas coisas. Você mencionou especificamente pessoas qualificadas como um sinal de maturidade.

Django é puro Python. Se você puder encontrar pessoas de Python, elas poderão aprender Django em poucos dias. Eles só têm que fazer os tutoriais.

  • Um site desenvolvido com Django geralmente é Apache + alguma cola + Django. A cola pode ser mod_wsgi ou mod_python ou mod_fastcgi. Você tem que gerenciar esta configuração com algum cuidado porque existem várias partes móveis. Este, no entanto, é o mesmo problema de configuração do Apache que você tem com o PHP - nada de novo aqui.

  • Um site Django tem uma ou mais instâncias de servidor Django, cada uma com um arquivo de configurações, um mapeamento de URL e qualquer número de aplicativos. Python puro neste momento.

  • Um aplicativo Django possui mapeamentos de URL, modelo e visualizações. Tudo puro Python. Unidade testada com as extensões do Django para o próprio framework unittest interno do Python.

  • O modelo usa uma camada ORM. Esta pode, talvez, ser a coisa mais confusa no Django. As pessoas às vezes projetam modelos muito estranhos porque pensam que são muito genéricos de alto nível ou pensam demais em SQL. Django é um meio-termo de orientação a objetos principalmente com alguma consideração SQL. Obtenha isto, e você é imparável.

  • Um aplicativo Django pode ter templates, que estão em sua própria linguagem de template. Esta seria a única coisa não-Python que é de muito interesse. Você pode querer adicionar tags personalizadas -- Python puro.

  • Você provavelmente terá JavaScript (também verdadeiro para PHP e todas as outras estruturas de aplicativos da web). Nada de novo aqui.

  • Como o aplicativo admin do Django lida automaticamente com o processamento básico de CRUD, você não precisa escrever isso. Você é livre para escrever todas as coisas transacionais que desejar. Mas você não precisa. Isso leva você a um híbrido muito, muito poderoso.

    • Você escreve algumas transações complicadas e críticas. Python puro, BTW.

    • Você não escreve nenhuma das transações burras de manutenção de tabela. Nenhum código é superior ao Python ou PHP.

    • Depois de começar a usar o mecanismo de modelo e CSS, você pode personalizar a interface de administração para se parecer com o que quiser. Isso é coisa de HTML/CSS, nada de Python ou PHP.

Linha inferior. A maior parte do conjunto de habilidades é Python. O ORM é -- sintaticamente -- Python, mas requer algum cuidado em fazer as coisas de forma simples e limpa. O template é uma linguagem própria, mas consideravelmente mais simples que o PHP. O resto é SQL, Javascript, HTML, CSS, Apache e outros.

Editar

Maturidade do Django

O blog do Django remonta a '05, o que significa que eles tinham anos de experiência sólida antes de finalmente lançarem 1.0 em setembro de '08. O desenvolvimento aparentemente começou em '03.