gpt4 book ai didi

php - 对 Zend 框架的 promise - 有任何反对意见吗?

转载 作者:IT王子 更新时间:2023-10-28 23:49:51 26 4
gpt4 key购买 nike

关闭。这个问题是opinion-based .它目前不接受答案。












想改善这个问题吗?更新问题,以便可以通过 editing this post 用事实和引文回答问题.

4年前关闭。




Improve this question




我正在翻新一个我已经工作了很多年的大型 CMS。产品本身很棒,但有些组件,例如数据库和翻译类,需要紧急更换 - 早在 2002 年部分是自制的,随着时间的推移变得有点困惑,并且可能无法通过安全审计.
因此,我一直在密切关注许多框架(或者更准确地说是组件库,因为我不打算更改 CMS 的基本结构),最终我最喜欢 Zend Framework。他们提供了一个可靠的 MVC 模型,但不强制您使用它,并且他们提供了许多显然受到很多关注的专业组件(您知道吗俄语中有多个复数,并且您无法使用它们来翻译它们)一个简单的 ($number == 0) or ($number > 1) 开关?我没有,但 Zend_Translate 可以处理它。只是为了说明这个库似乎已经建立的彻底程度。)
我现在已经到了无可挽回的地步,开始用 Zend 制造的组件替换系统的关键组件。我真的没有第二个想法 - 我当然不想煽动火焰 war - 但在继续之前,我想退后片刻,看看是否有任何反对将大系统与 Zend 紧密联系在一起的说法框架。
我喜欢 Zend 的地方:

  • 据我所知,非常高质量的代码
  • 非常详细的文档,至少关于事物如何工作的介绍(还没有使用详细的 API 文档)
  • 由一家有兴趣看到框架繁荣的公司提供支持
  • 深受社会各界好评,拥有可观的用户群
  • 采用我喜欢的编码标准
  • 附带全套单元测试
  • 在我看来,这是在现代、专业的 PHP 开发方面做出的正确选择——或者至少是正确的选择之一。

  • 我一直在考虑将 ZF 的功能封装和抽象到自己的类中,以便能够更轻松地切换框架,但得出的结论是,这不是一个好主意,因为:
  • 这将是不必要的抽象级别
  • 可以性价比
  • 使用框架的巨大优势——熟悉其组件的开发人员基础的存在——将被部分抵消

  • 因此,对采埃孚的 promise 将是深刻的。因此我的问题:
    有什么实质性的反对 promise 使用 Zend 框架吗?
    您是否了解 Zend Inc. 计划在 2011 年作恶并使其成为闭源库的内幕消息? Zend Inc. 是由想要接管地球的邪恶吸血鬼经营的吸血鬼经营的吗? (在评论中已经确定 Zend 实际上是由吸血鬼运行的。)当您将所有项目转移到它时,您是否开始注意到代码库中存在概念缺陷?质量代码的出现是一种错觉吗?代码看起来不错,但在我的四核工作站以下的任何东西上运行速度非常慢吗?

    Accepting answer

    Thanks a lot everyone for your detailed feedback. I wish I could set up a bounty and distribute it evenly among all answerers.

    Among many opinions favourable towards ZF, there was one very well founded one against. I took that very seriously and had a close look at alternatives, mainly Yii and Kohana. From that comparison and from reading some more opinions regarding ZF and competing products, I can see that Zend can be viewed as bloated in some fields compared to more minimalistic frameworks. (I can also see that this "bloat" is mostly with good reason to provide maximum flexibility. But the question whether you want maximum flexibility and deal with the ensuing complexity, or a simpler approach with clear guidelines, is a valid one.)

    Anyway, I will go for Zend for the project at hand, because the main use I have for the framework there is as a component library. I do not want to adopt Zend's MVC model, I just need high-quality components for Internationalization, Session handling and so on. Because I am building a redistributable product, Zend's flexibility (e.g. the support for five different dictionary formats) is welcome to me. Also, ZF seems to be the only framework that allows the degree of freedom I want (No forced use of patters, file structures...) as far as I can see, no other framework offers that.

    For future projects in which I want to make use of the actual MVC features, and totally submit to a framework's conventions on application building, naming, style, and procedures, though, I may not necessarily be going for Zend, but for a more minimalistic framework like Yii or Kohana.

    最佳答案

    Zend Framework 是最佳选择 .最好的框架 API,可读的代码,语言约定,好的文档,社区,支持等等
    我对它的不喜欢(主观的,可能人们会因此反对我)是:

  • Zend_Form , 有它的用处,但总的来说太突兀了,我只想构建我的 HTML 而不是与 API 和装饰器抗争。
  • Zend_Db_Table ,功能强大,但要实现目标需要大量的工作,Rails 教会了我偷懒。不,我不想为模型编写 3 个类,一个用于表,一个用于行集,一个用于行,然后将它们相互绑定(bind)等等。我可能在某个时候需要表数据网关,但现在我真的想将这些数据与快速事件记录连接起来。
  • 没有事件记录。随着 php 5.3 中后期的静态绑定(bind),这可能会改变...

  • 我真的很努力地尝试使用这两个几个月,直到我终于拥有它。

    我克服了它们(来自 Ruby on Rails 的想法)
  • 使用普通 View 助手而不是 Zend_Form ,如下所示:echo $this->formText('email', 'you@example.com', array('size' => 32));
  • 拥有自己的 Active Record 样模型 ( http://www.phpactiverecord.org )
  • 验证和过滤模型
  • 对于真正极端的极端情况,可以回退到 Zend_Form + Zend_Db_Table,尽管 从来没有觉得有必要。

  • 编辑
    有一些新 child 值得一试,例如 Laravel

    ZF 真正胜过其他框架的一件事是路由器、 Controller 和 View 、约定、清晰可读的代码、进程。

    关于php - 对 Zend 框架的 promise - 有任何反对意见吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2427981/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com