首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >单一功能与多功能功能

单一功能与多功能功能
EN

Stack Overflow用户
提问于 2013-03-28 05:32:15
回答 2查看 200关注 0票数 0

我正在为我正在工作的MVC项目开发一个模型。我在想,一个任务是有多个函数更好,还是每种处理方式都有一个函数更好。例如,是不是更好一些,比如:

代码语言:javascript
复制
public function get($identifiers = null, $limit = null, $offset = null)
{
    if ($identifiers != null) {
        if (is_array($identifiers)) {
            $this->db->where($identifiers);
        } else {
            $this->db->where($this->_key, $identifiers);
            $method = 'row'.($this->_return_array ? '_array' : '');
            return $this->db->get($this->_table)->$method();
        }
    }

    if ($limit != null) {
        $this->db->limit($limit, $offset || null);
    }

    if (!count($this->db->ar_orderby)) {
        $this->db->order_by($this->_order);
    }

    $method = 'result'.($this->_return_array ? '_array' : '');
    return $this->db->get($this->_table)->$method();
}

来处理多个情况,或者具有单独的功能,例如

代码语言:javascript
复制
get($id) {}
get_where($where) {}
get_all() {}

诸若此类。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-03-28 05:35:53

独立的功能坚持单一责任原则,而不是一个试图做很多事情的功能。这意味着您将拥有更小的函数,更易于理解、调试、修改和测试。在几乎所有的情况下,使用多个特定的函数要比使用一个单一的函数更好。

票数 1
EN

Stack Overflow用户

发布于 2013-03-28 05:38:40

这取决于这些函数内部发生了什么。如果大多数业务逻辑是相同的,只是输入参数不同(比方说,您需要准备不同的参数,但之后的逻辑是相同的),那么我会使用单个函数。在其他情况下,我会做多个更小的函数--它更容易维护,也更容易理解那里发生了什么。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15669926

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档