CI中更多或更少的类/更多或更少的方法 - Code Igniter

时间:2014-05-05 07:56:54

标签: php codeigniter code-organization

假设我们在CI中有以下MVC架构

models/my_model.php
views/my_view.php
controllers/my_controller.php

在my_model.php里面我有3个方法

my_model->method1()
my_model->method2()
my_model->method3()

并且在my_controller.php里面我有3个方法

 my_controller->method1()
 my_controller->method2()
 my_controller->method3()

每个控制器方法都会像这样调用相应的模型方法

//my_controller.php
    public function method1()
    {
    $record_id = 1
    $this->load->model('my_model1');   //load the model file
    $data['result'] = $this->my_model1->method1($record_id); // call the method method1 inside the class my_model1
    $this->load->view('my_view',$data);
    }

问题是:“在这些类中使用较少的类和许多方法是否有任何好的做法,或者为每个方法创建新文件(或类)更好”,如下所示:

models/my_model.php
models/my_mode2.php
models/my_mode3.php
views/my_view.php
controllers/my_controller1.php
controllers/my_controller2.php
controllers/my_controller3.php
你有什么想法

感谢

1 个答案:

答案 0 :(得分:0)

良好的编码习惯是重用代码。类和对象(通常OOP使这更容易)。

如果你有3个类都具有相同的功能(那不是构造函数)做同样的事情,你可能想看看你的类结构。然后,该函数应在Parent类或静态函数集合中实现。

如果你有3个功能做3件事,那就是另一回事了。更少的代码总是好的。见链接:

http://www.folklore.org/StoryView.py?project=Macintosh&story=Negative_2000_Lines_Of_Code.txt

此外,这些通用编码实践适用于每个类,无论是控制器还是模型。如果您正在使用OOP,那么您应该重新使用您的代码(重复使用,重新融合,回收......是吗?没有?无论如何),我认为我不需要解释重用的好处你的代码,(比如调试,编辑,改变函数/方法的流程,保持你的代码简单和干净,一切变得更容易......我的坏)。

最简单的事情是最美丽的......

...至少在代码中。