【问题标题】:Difference between CMS(joomla,drupal) and Frameworks(Zend, Symfony, CI)CMS(joomla,drupal)和框架(Zend,Symfony,CI)之间的区别
【发布时间】:2011-04-17 09:10:49
【问题描述】:

使用 joomla、drupal 等 CMS 开发什么样的应用程序以及使用框架开发什么样的应用程序。

如果所有类型的应用程序都可以在像 drupal 这样的 CMS 中开发,那么我们为什么要使用像 SYMFONY 这样的框架?

【问题讨论】:

    标签: php frameworks content-management-system


    【解决方案1】:

    CMS 是一种框架,但通常仅限于使用开箱即用的文章管理系统制作具有文章/页面类型内容的网站。

    一个框架提供了常用的 Web 开发样板代码,它们支持:

    • MVC 范例
    • 网址解析和处理
    • 模板化
    • 更好的请求处理

    【讨论】:

      【解决方案2】:

      Joomla & Drupal 通过访问控制列表进行用户管理。

      除了 CMS,您可以使用用户管理来帮助您的 php 组件嵌入 CMS。因此,您的平台/框架正在被更广泛的社区更新和修补。

      您对组件所做的更改可以在您使它们可用时从 CMS 的后端进行更新。

      【讨论】:

        【解决方案3】:

        CMS 是一种产品(内容管理系统),它允许用户发布和管理内容,它是一种以一种语言开发的解决方案。 Drupal 和 Joomla 是 CMS 的 PHP 解决方案。您可以根据您的自定义 CMS 产品的需要自定义 JOOMLA 和 Drupal。框架是不同的,它们是编码模式设计模式一起实现,以模块化和更可维护的方式使用语言。当我说编码模式时,它可以使用模型视图控制器架构将您的 Busnieess 逻辑与演示文稿分开。

        【讨论】:

          【解决方案4】:

          据我了解,CMS 是一个预构建的系统,可让您快速添加/修改内容。它为普通用户提供了足够的灵活性,可以通过安装模块和主题来更改您网站的功能。

          使用 CMS,所有的编程代码都已经编写好了,用户只需输入网站的数据(页面、博客文章等等——例如,参见 Wordpress);当然,除非您想修改底层源代码或为其创建自定义插件。

          框架是一个系统,有点像 CMS,但在您自己编写所有代码时,您可以更加灵活地使用您的网站。

          使用框架,您实际上是编写代码来实现网站(或您正在构建的任何网站),但您从一些定义软件一般结构的现成代码开始(而不是网站的结构,请注意),它通常提供许多用于处理典型编码任务的功能/方法。然后的想法是,开发人员将更多的时间花在实际的“业务”代码上,而不是花在实现业务逻辑的详细细节(即“框架”)上。查看 CodeIgniter 教程以了解这意味着什么。

          如果某个特定的 CMS 提供了您需要的大部分功能以及外观和感觉,那么它可能对您来说是一个很好的解决方案(可能需要注意的是它的代码的效率和可扩展性,如果您的网站的流量和增长需要它)。但是,如果您需要对 CMS 进行大量修改以使其以您想要的方式工作,您实际上可能能够在框架之上更有效地开发网站,这样您就不会花费大量花时间尝试在一堆不是您编写的 CMS 代码中找出要更改的内容以及如何更改它 - 当然,这还取决于您对将使用的框架的了解程度。

          【讨论】:

            【解决方案5】:

            并非所有类型的应用程序都可以使用 CMS 构建。 CMS 并不真正适合构建不主要关注内容管理的应用程序。但是“内容”这个词对于 CMS 来说足够宽松,可以适应许多应用程序。

            我曾经被委托在 Drupal 中构建一个博客聚合。这不是正确的工具。最近我也在 Drupal 中构建了一个手机应用程序。我宁愿在 Rails 中完成。

            【讨论】:

              【解决方案6】:

              可以使用诸如 joomla 之类的 CMS 来创建完全自定义的应用程序,例如 Zend 等普通框架。

              使用 CMS 的优势在于您可以使用现成的模块、组件和插件,也可以创建自己的模块、组件和插件,从而创建完全自定义的应用程序。

              Joomla 使用 MVC 范例并有自己的框架。它提供了非常好的用户管理(从 1.6 版开始

              为什么要重新发明轮子。

              【讨论】:

                猜你喜欢
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 2011-05-24
                • 1970-01-01
                • 2020-03-27
                • 2018-06-22
                • 2011-05-05
                • 1970-01-01
                相关资源
                最近更新 更多