【问题标题】:CodeIgniter Team WorkCodeIgniter 团队工作
【发布时间】:2011-03-16 08:13:55
【问题描述】:

到目前为止,我一直在学习 CodeIngiter,但似乎无法掌握如何使用 CodeIgniter 作为团队工作。有人可以使用 CodeIgniter 解释团队工作的基本原理吗?

据我所知,如果我错了,请纠正我:

假设有一个项目有 5 页,首页、关于我们、新闻、画廊和联系我们。 CodeIgniter 可以提供帮助的地方是假设我的团队中有 2 个程序员,所以我们每个人都在不同的文件夹中执行一个模块(针对每个 Controller-View-Model)(例如 Programmer A 执行 News 模块,Programmer B 执行 Gallery 模块) (文件夹新闻和画廊)等。

因此最终产品将是一组位于单独文件夹中的模块。 home/、content/、news/、gallery/、contact/等

这是使用 CI 的正确团队合作流程吗?我读到 CI 可用于设计师(前端 CSS)和程序员(数据库和控制器)之间的协作,但我认为通过这个流程,设计师将不得不等待程序员将变量名解析到视图中,然后会以某种方式停止工作的进展。

【问题讨论】:

    标签: php codeigniter workflow collaboration


    【解决方案1】:

    我目前在使用 Codeigniter 的团队环境中工作,我会告诉你一般情况下它的流程是这样的。

    • Designer 生成带有静态内容的设计编码 (html/css)。 (无变量)

    • 当他这样做时,我自己和其他人正在研究我们将要使用的数据模型并编写模型方法,我们可以预见需要以我们的应用程序将使用的方式与数据交互。

    • 然后设计师交出静态布局,我将它们“切割”成页眉/页脚/等...并通过编写控制器来将静态内容替换为变量。

    作为奖励我会强烈建议您的团队使用某种版本控制,这取决于您的需要我通常坚持@ 987654321@ 或 GIT,GIT 更适合不在集中位置的分布式团队。这将大大提高效率并防止(或减轻)两个人最终处理同一个文件而某人的工作被覆盖的情况,以及多人处理同一个文件时发生的其他情况。

    【讨论】:

      【解决方案2】:

      CodeIgniter 只是Model-View-Controller 的一种方式。您可能不需要将内容分成单独的模块或文件夹;相反,您可能希望创建这样的文件:

      控制器/gallery.php
      控制器/home.php
      控制器/news.php

      视图/gallery_view.php
      意见/home_view.php
      意见/news_view.php

      models/page.php
      模型/图片.php

      每个控制器使用多个模型和视图是完全合法的;事实上,这就是重点。博客控制器可能使用用户、帖子和 cmets 的模型。您还可以在其他视图中使用子视图(例如views/header_view.php)。

      如果您的项目具有明确定义的规范,您可能会考虑将团队划分为一个负责模型和控制器逻辑的人,另一个负责编写视图输出。或者,您可以在网站的不同部分之间划分工作;但是,您仍然需要编写一些在项目范围内使用的共享代码。这就是 MVC 的最大原则:不要重复自己。

      【讨论】:

      • 所以基本上,团队需要合作编写一些可能需要在项目范围内使用的功能,然后彼此独立工作,对吧?
      • @Henson:正如 Luke 所说,优势在于 MVC 分离,因此开发人员可以在 M-C 部分工作并制作可供设计师稍后打磨的基本 View .
      • 虽然 DRY 原则是一般编程的主要内容,但我看不出它与 MVC 有什么直接关系,尤其是被视为 最大原则。我会说这将是逻辑分离,特别是对于 MVC 模型。
      猜你喜欢
      • 2021-06-11
      • 2017-02-27
      • 2011-02-01
      • 2019-06-08
      • 1970-01-01
      • 1970-01-01
      • 2013-01-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多