【问题标题】:Is CakePHP preferable for a large scale web application? [closed]CakePHP 更适合大型 Web 应用程序吗? [关闭]
【发布时间】:2011-04-09 01:02:06
【问题描述】:

我是一名优秀的 PHP 开发人员,想用 PHP 开发一个大型 Web 应用程序。我正在考虑使用CakePHP 框架。

CakePHP 适合大型 Web 应用程序吗?

我应该开始学习和使用它吗?

CakePHP 值得投入时间和金钱,还是我应该使用核心 PHP 或其他框架?

我听说如果您遇到一些问题,很难找到支持。 它是否正确? 我也听到了很多关于它的好消息。

期待您的指导。

【问题讨论】:

  • 是的,它适用于大规模应用程序。任何不支持 PHP
  • CakePHP 支持 PHP 4。他们将在 CakePHP 2.0 中放弃对它的支持。
  • @Richard Knop 你为什么不喜欢对 PHP4 的支持? Cake有它,它并没有真正影响任何东西。
  • @Travis Leleu 好吧,我只是不喜欢 PHP4 中旧的“伪”OOP 支持,其中对象不是真正的对象,看起来更像是结构。 PHP5 中的对象模型也更好。支持 PHP4 通常意味着更糟糕的代码库(你甚至不能使用私有/受保护/公共方法和其他 OOP 重要特性,你不能使用一些不错的新功能等)。顺便说一句,我不知道 Cake 支持 PHP4,我认为 CI 是目前唯一仍然支持 PHP4 的框架。无论如何,请将此视为我的主观意见,我从未使用过 Cake 或 CI,所以我可能对所有事情都错了。
  • @Richard 合理点,我只是好奇。早期我做了一点 PHP,但几乎只使用了 5 个,所以我什至不能 100% 确定我是在使用“旧”PHP 还是新 PHP。

标签: php web-applications cakephp review


【解决方案1】:

在支持方面,我相信CakePHP 是相当不错的。他们有一个活跃的 IRC 社区,还有their own stackoverflow style website。此外,SO 上似乎有不少精通 CakePHP 的用户。

虽然 CakePHP 网站上缺少一些关于数据源、创建行为和其他一些零碎的文档。

这完全取决于您的应用程序是什么,适合工作的正确工具。

【讨论】:

  • 我们的应用程序是一个约会网站。而之前的开发者在“Has Many And Belongs Many”关系上遇到了一些麻烦。
  • 不幸的是,说网站是“这个”不会神奇地吐出你应该使用的东西。与其他开发人员交谈,讨论每个开发人员的优缺点。例如,CakePHP 具有非常强大的 ORM,但它遵循非常严格的约定,而 Zend Framework 之类的东西则更加模块化和松散。
  • 如果开发人员在模型关联方面遇到问题,那么那里有大量关于 HABTM 的资源,请阅读并开始尝试让代码正常工作。 HABTM 并不是一个很难掌握的概念。
  • Stoosh 非常正确地提到了 cakephp 使用的严格约定,这就是为什么开发第一个网站可能会很麻烦。在我看来,如果您从 cakephp 开始,请确保您有足够的时间进行网站的开发阶段。
  • CakePHP 可能是可用的较慢的框架之一,它肯定是稳定的并且肯定有支持(如前所述)。还有一个链接给你blog.astrumfutura.com/archives/…
【解决方案2】:

还有CodeIgniter也有很多类似的功能,建议你看看对比一下。

您可以使用这两个框架创建一些高度专业且可扩展的网站。你是definitely 朝着正确的方向前进,而不是编写普通的 PHP。

通过这些框架,您可以从使用经过充分验证的设计模式(例如模型视图控制器模式)中受益,并且还可以利用许多帮助类来进行数据库访问、表单验证和安全性。

我个人使用名为SilverStripe 的东西,它是一个 PHP 开发框架,带有一个开箱即用的可选 CMS,因此您可以立即创建基本页面,它也足够强大,您可以创建复杂的自定义 Web 应用程序比较容易。

我没有听说 CakePHP 的支持很差,但这就是我的情况。

无论您最终选择什么框架,肯定都会涉及到轻微的学习曲线。根据我的经验,当我开始使用框架时,我开始抱怨我想做的事情缺乏灵活性,但是当你开始学习正确的做事方法并利用为您完成大量繁重工作的类(表单脚手架、ORM、表单验证、数据库访问、安全性等)。

祝你好运。

【讨论】:

【解决方案3】:

CakePHP 似乎是迄今为止最简单的。一旦你弄清楚如何使用 Bake 命令,它就变成了小菜一碟。我试过 Yii,Zend 终于用 cakePHP 解决了。 Yii 的生活似乎很艰难。 Zend 太大了,无法处理。

【讨论】:

    【解决方案4】:

    嗯嗯。对于大型网站,我认为您正在寻找最佳选择。

    当您的网站需要大量自定义时,CakePHP 会很有帮助。另一方面,JoomlaWordPress 之类的选项虽然不错,但对于您提到的大型网站来说并不可取。

    我知道我们大多数人在第一个 CakePHP 网站上遇到或将面临困难,因为当我们在某些情况下陷入困境时很难找到解决方案,但您不必担心,因为我们在 Stack Overflow 提供帮助你出去。

    【讨论】:

    • :) 谢谢你的好回答。 Wordpress 或 Joomla 对我来说不是一个选项,因为这将是一个完整的自定义应用程序,具有社交网络 API 集成。所以它将是手工制作的。
    • 将 PHP 框架与编程网站上的 CMS 进行比较让我很失望。
    • @Happyhardick :: 在 cakephp 中集成 API 不会是问题,我知道 cake 做得非常优雅。
    • @strager :: 对您的失望表示歉意。当一个人听到大量使用 php 完成的事情时,这对初学者来说真的很困惑。
    • 感谢您对 CAKE 的精彩回答
    【解决方案5】:

    是的,CakePHP 甚至适用于大型应用程序。我使用 OpenSocial 和 CakePHP 在 LinkedIn.com 上部署了一个合作伙伴应用程序,我们每天都会看到 1000 多个新用户。到现在已经2年多了,该应用程序正在稳步增长,该应用程序的性能仍然非常好。 (我们使用 2 个 Apache Web 服务器和 memcached 来备份它)

    【讨论】:

      【解决方案6】:

      Yii PHP 框架呢?它应该是快速和可靠的。

      【讨论】:

        猜你喜欢
        • 2013-01-19
        • 1970-01-01
        • 1970-01-01
        • 2011-08-02
        • 2014-03-13
        • 2011-08-13
        • 1970-01-01
        • 2015-06-01
        • 2018-11-10
        相关资源
        最近更新 更多