Php CodeIgniter团队工作

Php CodeIgniter团队工作,php,codeigniter,workflow,collaboration,Php,Codeigniter,Workflow,Collaboration,到目前为止,我一直在学习CodeIngiter,但似乎无法理解如何将CodeIgniter用于团队工作。有人能解释一下使用CodeIgniter进行团队合作的基本原理吗 据我所知,是这样的,如果我错了,请纠正我: 假设有一个5页的项目,主页,关于我们,新闻,画廊和联系我们。CodeIgniter可以提供帮助的地方是,假设我的团队中有2名程序员,那么我们每个人在不同的文件夹(文件夹新闻和画廊)中做一个模块(对于每个控制器视图模型)(例如程序员a做新闻模块,程序员B做画廊模块),等等 因此,最终产品

到目前为止,我一直在学习CodeIngiter,但似乎无法理解如何将CodeIgniter用于团队工作。有人能解释一下使用CodeIgniter进行团队合作的基本原理吗

据我所知,是这样的,如果我错了,请纠正我:

假设有一个5页的项目,主页,关于我们,新闻,画廊和联系我们。CodeIgniter可以提供帮助的地方是,假设我的团队中有2名程序员,那么我们每个人在不同的文件夹(文件夹新闻和画廊)中做一个模块(对于每个控制器视图模型)(例如程序员a做新闻模块,程序员B做画廊模块),等等

因此,最终产品将是一组单独文件夹中的模块。主页/内容/新闻/画廊/联系人/等


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

CodeIgniter只是一种方法。您可能不需要将内容分成单独的模块或文件夹;相反,您可能希望创建如下文件:

controllers/gallery.php
controllers/home.php
controllers/news.php

views/gallery\u view.php
views/home\u view.php
views/news\u view.php

models/page.php
models/picture.php

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


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

我目前在一个团队环境中使用Codeigniter,我会告诉你,一般情况下,它是这样运行的

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

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

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


作为奖励我强烈建议您的团队使用某种版本控制,这取决于我通常坚持的需求,或者,GIT更适合不在集中位置的分布式团队。这将极大地提高效率,防止(或减轻)两个人在同一个文件上工作而另一些人的工作被覆盖的情况,以及多人在同一个文件上工作时出现的其他情况。

,团队需要合作编写一些可能需要在整个项目范围内使用的功能,然后对于其他部分,它们独立工作,对吗?@Henson:正如Luke所说,MVC分离带来了优势,因此,开发人员可以在M-C部分工作,并创建一个基本视图,稍后由设计人员进行润色。虽然DRY原则通常是编程的主要原则,但我不知道它与MVC有何直接关系,尤其是被认为是最大的原则。我想说的是逻辑分离,特别是对于MVC模型。