PHP,Python,PostgreSQL设计是否适合商业应用?

Ran*_*ess 2 php python postgresql

我正在寻找一些关于我希望构建的业务应用程序的快速想法.我想分别使用PHP,PythonPostgreSQL分离三层表示,域逻辑数据.我想听听,可能来自其他曾经走过这条道路的人,如果这种方法存在问题,我是否针对错误的工具等等.

  • 我正在研究PHP,因为它被广泛使用,相当成熟,我可以找到很多具有PHP界面设计技能的人.

  • 我正在研究Python,因为可读代码的好处,因为我听说可以找到更多具有主题技能的Python程序员(在这种情况下,财务),它是一种开源语言.另外,编码似乎更容易.

  • 我正在研究PostgreSQL的事务级功能.MySQL也是一个选项,但我不需要讨论这个方面.

这不是一个Web应用程序,虽然我想将浏览器用于用户界面.这更像是一个企业应用程序,但适用于具有中等数量用户(可能是5-10)和适度数量的日常交易的小型企业.

重要的是,我们将来能够将数据库或域逻辑或接口与其他层分开升级.

我不是在寻找买入与建立的辩论,因为这是一个不同的讨论.

感谢您的任何见解

S.L*_*ott 11

看看Django.

Python代码.一种模板语言,允许一些与PHP相同的功能 - 语法略有不同.

模型与视图函数("业务规则")脱节并与表示离婚.这在整个Django中都得到了强制执行.

一个常见的问题是"为什么我不能这样做 - 在Django模板中有一些疯狂的类似PHP的东西?" 答案是演示文稿不是处理.在Django视图函数中进行处理.在模板中将结果呈现为HTML.

此外,Django有一个ORM层可以让你从小的SQL考虑中解脱出来.MySQL或PostgreSQL在Django中或多或少都是等价的.


编辑

"成熟"意味着很多事情.你特别提到熟练的人是成熟的标志.

Django是纯Python.如果你能找到Python的人,他们可以在几天内学习Django.他们只需要做教程.

  • Django驱动的站点通常是Apache +一些胶水+ Django.胶水可以是mod_wsgi或mod_python或mod_fastcgi.您必须小心管理此配置,因为有多个移动部件.但是,这与PHP中的Apache配置问题相同 - 这里没什么新东西.

  • Django站点有一个或多个Django服务器实例,每个实例都有一个设置文件,一个URL映射和任意数量的应用程序.此时纯Python.

  • Django应用程序具有URL映射,模型和视图.全纯Python.单元测试使用Django扩展到Python自己的内部单元测试框架.

  • 该模型使用ORM层.这可能是Django中最令人困惑的事情.人们有时会设计非常奇怪的模型,因为他们认为太高级别的超级通用或他们在SQL中思考太多.Django是一个主要面向对象的中间层,有一些SQL考虑因素.得到这个,你是不可阻挡的.

  • Django应用程序可能具有模板,这些模板使用自己的模板语言.这将是唯一非常感兴趣的非Python事物.您可能想要添加自定义标签 - 纯Python.

  • 您可能拥有JavaScript(对于PHP和其他所有Web应用程序框架也是如此).这里没什么新鲜的.

  • 由于Django的管理应用程序自动处理基本的CRUD处理,因此您不必编写此代码.您可以自由编写所需的所有事务性内容.但你没必要.这将带您进入一个非常非常强大的混合体.

    • 您编写了一些复杂的关键事务.纯Python,BTW.

    • 您不会编写任何哑表维护事务.没有任何代码优于Python或PHP.

    • 在您使用模板引擎和CSS之后,您可以定制管理界面,使其看起来像您想要的任何内容.这是HTML/CSS的东西,没有Python或PHP.

底线.大部分技能都是Python.ORM在语法上是Python,但需要谨慎处理简单干净的事情.模板是它自己的语言,但比PHP简单得多.其余的是SQL,Javascript,HTML,CSS,Apache和什么不是.


编辑

Django成熟度

Django博客可以追溯到05年,这意味着他们拥有多年的丰富经验,最终在08年9月发布了1.0.发展显然始于2003年.