【问题标题】:To use codeigniter framework or standard php? [closed]要使用 codeigniter 框架还是标准 php? [关闭]
【发布时间】:2011-05-21 18:36:16
【问题描述】:

我建议使用 CodeIgniter 框架而不是标准 PHP。

他们的反应如下:

Code Igniter 的优点包括标准化的 MVC 结构。 缺点包括您需要整个框架,即使您不需要全部使用它,而且团队推出项目的速度也有点慢。我们普通的自定义 PHP 框架的优点 - 开发速度快,完全灵活,只需要相关的代码。

您同意他们的回答吗?为什么? 由于使用短标签和免费提供的模块,我一直认为 CI 的推出速度更快。

【问题讨论】:

  • 这家伙听起来像是在试图让你使用他的框架而不是 codeigniter 的。任何框架的目标都是加快开发速度,各有利弊。我看不出 codeigniter 会减慢您的速度,因为它具有更多功能。这不像您必须全部使用它们。假设您知道自己在寻找什么,那么您只需学习和使用相关的内容。
  • 顺便说一句。他的框架是什么?他是否有基于他的框架的成功项目的基础?如果不是 MVC,他会实现什么?对我来说,这家伙似乎不知道 CodeIgniter(或任何其他非自定义)框架,并且害怕基于它启动项目。但这只是一个猜测,他可能非常擅长编码,而且这个框架可能非常好——这只是我的猜测,基于他如何论证他的框架更好。
  • @Tadeck:我不确定“自定义”框架是什么。该开发人员用于 iPhone 应用程序的后端管理和后端业务领域。
  • 我觉得你说的那个人他无能,我什至想看看他所谓的框架是不是一个真正的MVC。

标签: php codeigniter frameworks


【解决方案1】:
  • CodeIgniter 有一个学习曲线,但该曲线可能比您的自定义框架更快。这是因为 CodeIgniter 有据可查。
  • CodeIgniter 是一个相当全面的库。学习该框架后,您不仅可以在当前项目中使用它的任何库,还可以在其他各种项目中使用它。
  • 这项工作已经为您完成。您甚至可能不知道您的代码中存在 XSS 或 CSRF 漏洞,因为您没有进行彻底的安全审计。但社区框架一直在接受审核。
  • 您可以根据自己的需要扩展 CodeIgniter,并且仍然具有自定义功能。
  • 在使用 CodeIgniter 足够长的一段时间后,由于该框架采用了许多最佳实践,因此您将不可避免地学习一些优秀的编程实践并提高您的整体知识。
  • 如果您遇到问题情况,很可能其他人已经解决了它。 CodeIgniter 也有一个很好的社区,您可以通过它节省数小时的调试时间。

也就是说,CodeIgniter 不是唯一的框架,但我真的很喜欢这样一个事实,即随着新版本的发布,他们已经迁移到 PHP5。一般来说,开源框架是要走的路。

【讨论】:

  • 完美!正是我要找的东西;)你证实了我的怀疑。
【解决方案2】:

我强烈反对。

项目的细节会很有帮助,但总的来说框架非常有帮助,并且可以显着加快工作(不一定是应用程序)

考虑一个事实,“自定义 PHP 框架”(不管他们怎么想)是……自定义的。这意味着它没有经过测试,例如。 Zend 框架,在数千个项目中并没有被证明是高效和成功的,它可能是非常简单的东西(因为大型框架已经由大型开发团队以及使用它们的公司的开发人员开发多年)。

当然,编码 PHP 可能是一个不错的选择,当您真的需要(应用程序的)速度时,有时间构建它并支付金钱来支付将广泛开发它的开发人员(因为他们将实现许多功能几乎每个 PHP 框架都附带)。但您必须确定,您真的需要采用非标准方法(作为“非标准”,我的意思是不使用一些可靠的框架)。

这取决于你。如果您可以提供有关必须创建的应用程序的一些详细信息,则答案可能更相关。

【讨论】:

  • ...它们也很重,需要实现缓存系统才能工作...
  • @Charliepiga 确实有一些特定的框架?
  • 任何频繁使用的网页迟早都需要缓存
  • @Tadeck... 大家好?
  • @Charliepiga 这取决于 - 在某些应用程序中,您没有 来实现任何缓存:可能不需要它
【解决方案3】:

非商业项目:标准 PHP。 商业项目:CI。

尝试构建自己的框架非常有教育意义,对你有很大帮助;它还可以让您创建一个适合您需求的框架,而不是一个通用的框架。但这只有在您设法创建非商业项目时才能做到,因为商业项目需要您可能无法从自制框架中获得的稳定性。通过创建自己的框架,您可能会浪费大量时间(这在处理业务内容时会很昂贵)并且白费。

这基本上取决于您的项目类型。

【讨论】:

  • 即使是非商业项目。使用 mvc 框架让你学到很多东西..
【解决方案4】:

我有一些编写自己的 CMS 的经验,我必须承认,这是很有教育意义的,但从财务角度来看,这是完全不经济的决定。

在我看来,那些开发人员应该尝试编写一些规范。非常详细地说明了他们需要实现的内容。然后他们应该计算编写此类功能所需的时间,以便将这项工作与 CI 中已包含的元素进行比较,并确定哪个选项在编码时间、学习时间以及测试时间方面更可行。

【讨论】:

  • -1 CI 不是 CMS,它是一个 MVC 框架。
  • 你是对的。但我的答案仍然是正确的:)
【解决方案5】:

如果他们不介意教授他们的自定义框架,那么它可能是最合适的(尤其是如果编写它的人还在的话)。

但是,自定义框架可能会变成无法支持的噩梦。 CI 具有社区小和文档完整的优势。一旦你用它推出了几个项目,我相信推出时间会和自定义框架一样快。

【讨论】:

    【解决方案6】:

    我们放弃了自己的自定义框架,转而支持 CI。在财务上,这是一个艰难的决定,因为我们已经花费了 1000 小时,并且有很多项目在上面运行。

    CI 使我们能够更快地开发并标准化我们的项目。该架构还允许我们轻松扩展,而不必担心“损坏”核心框架。

    CI 是 IMO 的前进方向

    【讨论】:

      【解决方案7】:

      他们的反应是准正确的......

         Disadvantage: also a bit slower for the team to roll out the project.
      

      这通常是不真实的,事实上,在许多情况下可能恰恰相反。就个人而言,我能够使用框架更快更快地完成项目。我没有在团队环境中使用 MVC,但我想通过将工作划分为模型、视图和控制器工作流分离将提高开发速度。

      你在建造什么?这是关键问题。

      如果您正在构建一个动态的 Web 应用程序,那么框架将为您节省大量的工作时间,因为您不必一遍又一遍地重新发明轮子。如果您的项目的重点是基本的,那么确实……框架会增加太多开销。我想说,作为一般规则,如果您的项目需要超过 5 个 .php 文件,那么请开始使用框架,因为这就是它的目的 - 分离逻辑。

      在您怀疑代码开始变得杂乱无章的大型项目中使用 CodeIgniter 或其他框架。 MVC 模式可以防止这种混乱。

      听起来好像您以前从未使用过框架。决定一个框架是否适合该任务的第一步是熟悉一个框架。然后,您将处于更好的位置来进行此调用。我不建议你马上自己写;在玩过 CI、Cake 或 Zend 之后,您将获得很多洞察力。

      【讨论】:

      • arsenault:基本上是一个 iPhone 应用程序连接到后端管理和业务区域(包括数据库)。大多数页面将位于管理和业务区域。
      猜你喜欢
      • 2010-10-23
      • 2013-02-19
      • 2013-11-09
      • 2021-11-30
      • 2010-12-23
      • 2011-10-27
      • 2011-09-07
      • 1970-01-01
      相关资源
      最近更新 更多