Php Zend与drupal(比较)

Php Zend与drupal(比较),php,zend-framework,drupal,Php,Zend Framework,Drupal,我们有一个项目来构建一个web应用程序,该应用程序具有许多功能,如:谷歌地图集成、物品审查和评级(类似于易趣评级)、用户间聊天、基于内容计算值的内容搜索、与Facebook集成(用于登录、喜欢内容、获取用户朋友等),通过短信、电子邮件和其他许多方式进行批量和实时通知 我们有两个zend和drupal的候选人,我试图搜索详细的 他们之间的比较没有运气;只找到高级的东西 我们的标准是使用不需要大量定制开发的产品,并且满足大多数开箱即用的需求,并且它应该是可靠的,并且在将来易于维护和扩展 如果有人能解

我们有一个项目来构建一个web应用程序,该应用程序具有许多功能,如:谷歌地图集成、物品审查和评级(类似于易趣评级)、用户间聊天、基于内容计算值的内容搜索、与Facebook集成(用于登录、喜欢内容、获取用户朋友等),通过短信、电子邮件和其他许多方式进行批量和实时通知

我们有两个zend和drupal的候选人,我试图搜索详细的 他们之间的比较没有运气;只找到高级的东西

我们的标准是使用不需要大量定制开发的产品,并且满足大多数开箱即用的需求,并且它应该是可靠的,并且在将来易于维护和扩展

如果有人能解释一下zend和drupal的比较,并给我指出最近在这方面已经做过的任何有用的分析,我将不胜感激

zend的真正优势是什么

提前感谢并致以最良好的问候

Zend是一个,而Drupal更像是一个(具有一些框架特征)。这使得在这些定义之外很难对它们进行比较

我们的标准是使用 不需要很多定制 开发并满足大多数客户的需求 需要开箱即用,而且应该是 可靠且易于维护和维护 在将来扩展


这方面没有什么灵丹妙药,但是你的大多数标准(预构建模块)让你坚定地站在Drupal阵营中。它采用了可以插入和配置的模块。

Drupal更容易启动和运行一个项目,它是一个开箱即用的完全工作的web应用程序。Drupal的灵活性非常好,但是请注意,使用这种“预构建的应用程序”类型的框架往往会使困难的事情变得容易,而容易的事情则很难做到


另一方面,Zend框架提供了更大的灵活性,但代价是必须自己从头开始编写

实际上,您可以从两种不同的解决方案中进行选择。它们都用于建筑工地,但处于不同的水平

基于以下几点:

我们的标准是使用 不需要很多定制 开发并满足大多数客户的需求 需要开箱即用,而且应该是 可靠且易于维护和维护 在将来扩展

我认为你应该选择Drupal。这就是为什么:

  • Zend Framework是PHP Framework,它使您几乎可以从头开始构建应用程序-您需要付出一些努力才能达到实际使用应用程序的阶段
  • Drupal是一个内容管理框架,它可以帮助您在模块的基础上构建CMS系统-您只需要开始使用基本功能就可以安装Drupal
  • Zend框架和Drupal都是可扩展的,但Zend框架的可扩展性要大得多。Drupal有一些应该遵循的架构,您对此无能为力(除非您确实有时间和资源对其进行重大更改,然后成为您自己的支持,更新核心),但由于您需要“只是可扩展性”(而不是一些主要的),Drupal仍然满足您的需求
  • 在Zend Framework和Drupal上,有很多模块允许您向应用程序添加所需的功能,但是在Drupal中,复制文件并通过接口进行配置就很简单了—通常不需要开发人员执行任何操作

您还必须意识到,由于一些架构限制,您应该首先分析Drupal是否真的适合您的解决方案。如果您认为流量会很大,并且需要不同的基本概念(用户管理、内容管理?),那么您可能应该考虑选择更消耗资源的解决方案(Zend Framework)。

Drupal提供了框架的功能(通过模块及其API),Drupal提供了现成的功能。诀窍是非常了解Drupal

Drupal中预先制作的功能可以通过钩子覆盖,或者您可以找到不需要修改其他模块的变通方法,但有时这需要大量的Drupal内部工作经验才能实现最大的控制

一个主要障碍是决定何时编写内部模块,或打开core或contrib中提供的模块。问题(对我来说)是抵制塞壬的召唤,使用Drupal在core或contrib中提供的每个模块

另一种技术是打开模块,使用模块提供的功能和数据,在核心模块或contrib模块提供的功能之上创建(或替换)自己的功能

有了Zend,它们提供了一组非常好的类,但每个页面包括管理页面,以及缓存和路由等功能都需要从头开始构建。在某些方面,这是一件好事,如果它能让你摆脱想使用现成Drupal模块的诱惑

另一方面,你拥有一切你必须从头开始。有了Drupal这样的社区,您可以成为共享开发工作的社区的一部分