你真的是在使用面向对象吗?

你真的是在使用面向对象吗?,第1张

你真的是在使用面向对象吗?

虽然现在都是使用面向对象,但你真的使用面向对象了吗?还是你一直在使用过程式编程

区别

面向对象和过程式编程的一个核心区别是:如何分配职责。过程式编程表现为一系列的命令和方法的连续调用。控制代码根据不同的条件执行不同的职责。面向对象编程将职责从客户端代码移到专门的对象中,尽量减少相互依赖。我们举个例子说明:

面向过程式的编程:

我们先用下面的格式来读写文本,readParam读取文件内容,然后存到关联数组里,最后返回。writeParam 函数会循环遍历关联数组,然后将键值对写入文件。

function readParam($sourceFile){
        $param = [];
        //从$sourceFile读取文件内容
        return $param;
}
function writeParam($param, $sourceFile){
        //写到$sourceFile文件里
}

上面这个工具好理解,也易于维护,但现在需求改变,需要支持读写xml和text文件。我们进一步改变代码,如下所示:

class file{
    function readParam($source){
        $param = [];
        if (preg_match("/.xml$/i", $source)) {
            //从xml文件中读;
        } else {
            //从text文件中读
        }
        return $param;
    }
    function writeParam($param, $source)
  

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5581831.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-14
下一篇 2022-12-14

发表评论

登录后才能评论

评论列表(0条)

保存