CMS和框架之间有什么区别?以及如何根据某些要求选择它们?

Rup*_*tel 19 php zend-framework content-management-system

我目前正在使用Zend Framework,我对它非常满意.我想知道的是,使用像Joomla或Drupal这样的CMS更好的是什么样的要求.

考虑到我目前的项目,它是一个门户应用程序.它完全是从Zend开始制作的.然后一些人来评论说它是在drupal中实现的,你可以通过辛苦努力为你建立的东西获得插件.

所以我需要一个如何在启动阶段选择CMS和A Framework的指南?

Ara*_*yan 21

您的问题是,是使用现成的CMS还是使用框架创建自己的系统.正确答案取决于以下内容:

  • 预算
  • 您将拥有的用户数量(长期性能问题)
  • 进一步维护
  • 您希望在网站上提供的详细信息(铃声和口哨声)
  • 使用第三方/自定义API实现
  • 需要高自由度的特殊/自定义功能(例如:StackOverflow奖励积分和坏处)

由于这是我们大多数人经常面对的问题,所以现在是现成的CMS与框架的缺点和优点:

现成的CMS

优点

  • 如果您的项目通常适合CMS提供的内容,则可以加快启动和开发时间
  • 可用的模块和主题
  • 由社区支持,这意味着将免费为您提供新功能,错误修正,支持,教程等
  • 统一的标准集 - 继续在现有的CMS站点上工作比拿其他人的自定义应用程序更容易(这是相对的,但关键是在使用现有CMS的站点中,大多数事情/设置将是熟悉的你在自定义应用程序中,以前的开发人员有更多的自由)
  • 安全是你不需要担心就像在一个自定义应用程序

缺点

  • 如果您的要求非常具体,则需要覆盖系统的默认工作流程; 在某些情况下,这可能会很棘手,并且会花费更多时间而不是自己编写
  • 模块/插件中的冗余代码
  • 性能 - 现成的CMS很少会像定制的应用程序一样快
  • 不适合所有大型网站(除非你几乎适合CMS提供的所有内容)
  • 在某些情况下陡峭的学习曲线(Typo3,Drupal)

定制应用

优点

  • 由您来定义应用程序的结构和逻辑
  • 应用程序设计专门针对您正在进行的项目而设计 - 因此没有冗余代码
  • 自由做任何你想做的事

缺点

  • 昂贵 - 在大多数情况下,您/您的客户需要更多资金才能使用自定义应用
  • 进一步的维护将更加困难
  • 结构的改变和修改可能非常耗时
  • 如果你不使用CMF,你将不得不在某些方面重新发明轮子

底线

花几天时间了解有关CMS的信息,例如:

  • Drupal - 我的第一个建议; 适合中大型网站; 良好的社区; 中/陡学习曲线
  • WordPress - 我的第二个建议; 适合中小型网站
  • Typo3 - 企业级系统; 非常复杂,结合了可以在项目中独立使用的框架
  • Joomla - 我个人不喜欢它,因为业余插件不推荐它,但它很受欢迎
  • SilverStripe
  • 镆铘
  • Concrete5

我认为任何更大,更严肃的项目,至少有1-2名程序员在任何时候都要照顾系统,应该是习惯的.仅当例外情况恰好与现有CMS提供的内容完全匹配时才有例外.

希望这可以帮助 :)


nde*_*ker 8

看看StackExchange.com上CMS和Web开发框架之间的区别.

一个CMS(内容Magagement系统)来管理网站上的内容.它通常提供工具,使这项任务尽可能简单.

CMSes的例子:Drupal,Joomla,DotNetNuke等.

一个框架就像是一组库/类来构建Web应用程序.许多框架都提供了用于数据库访问,模板引擎等的库.这样,您就不必重新发明轮子.

CMS通常建立在框架之上.

框架示例:CodeIgniter,CakePHP,Kohana ......