2010-08-30 76 views
5

任何人都可以列出CakePHP框架比其他PHP框架有什么缺点吗?
1)请解释为什么缺少的功能对于PHP项目如此重要?CakePHP框架的缺点

2)缺少的功能如何帮助那些使用该功能的Web开发人员?

回答

6

Cake的大问题在于它非常有见地。这当然也是它的强大力量。我的意思是说,Cake对某些类型的应用程序严重倾斜,即标准的CRUD apps。如果你的项目是CRUD,蛋糕可以是一个巨大的帮助。如果你想要做一些非常不同的事情,并且需要大量的定制,Cake实际上可能会阻碍你。

因为很有见解,所以如果你的意见不同,它可能不适合你。在与Cake一起工作时,您必须执行Cake的方法。这并不是说你无法扩展和定制它,但即使这样做,你也必须这样做Cake的方式。最初的学习曲线可能非常陡峭,如果你想走出蛋糕界限,你需要有点经验。另一方面,所有Cake项目中通常都有非常一致的编码风格。

与那些明确尝试无脂肪的蛋糕相比,蛋糕往往是一个更大的骨架。如果高速性能是您的主要目标,那么您最终可能需要花费更多时间进行调整。尽管如此,这通常会被更快的开发时间抵消。这是使用大量automagic的双刃剑。

Cake没有什么大问题。你可以用它做任何你想做的事,就像你可以用其他框架一样。它只是让一些项目比其他项目更好。

0

基准测试显示蛋糕比其他框架慢一点。也没有模板支持。

+4

“没有模板支持”?首先,PHP已经是一种模板语言。其次,大多数流行的模板语言都有Cake插件,如果没有,您可以在其周围编写自己的Thin wrapper(自定义视图),然后就可以开始了。自定义视图是Cake的一个显式特性。另外,你能指出任何最近的基准吗?蛋糕可能会也可能不会很慢,但没有人能够用最近的数据产生任何硬性事实来支持这一说法。 – deceze 2010-08-30 06:28:18

0

我喜欢cakephp,但发现它与周围的非蛋糕代码不友好。很难将蛋糕代码与通用的PHP页面和会话进行合并。蛋糕进入我的项目后2年(由于其优势)。遗留代码仍然存在并积极开发,但我们必须小心选择在蛋糕或外部编码模块X.它也很难从蛋糕外面叫蛋糕控制器。

+0

这只对saphghetti代码不友好。意思是,如果你想将你的逻辑,模型和视图合并成一个文件,并用它作为蛋糕的控制器,蛋糕将会不高兴。但是,如果您以供应商身份放弃现有代码,则它的功能将会正常运行。 Cake使用标准会话。问题实际上可能是遗留代码缺乏标准,而不是框架的结构。 – 2011-04-20 17:49:55

2

它目前仍然是一个PHP4框架,所以它不使用任何新的PHP功能。

+4

...另一方面确保高度兼容性。蛋糕有很多侧面。像Zend这样的框架可能会遇到麻烦,因为即使稍微老一点的PHP安装它们也不会运行。我同意虽然他们应该放弃PHP 4的支持,但仍然在使用它是疯狂的。 :) – deceze 2010-08-31 01:10:52

+0

是的,即将到来的CakePHP 2.0将会放弃对PHP4的支持。 – dhofstet 2010-08-31 05:59:58

+0

此外,CakePHP 2将与CakePHP 1的API兼容。3,所以如果你正在开始一个新的项目,你应该可以直接在v2中下载,而不需要改变你的代码。 – bjudson 2010-08-31 20:07:48