代码优化 第五期 重复的代码

为何会产生?

因为方便(懒):可能很多初级程序员脑海里跳出的第一个词就是方便了。但是殊不知一时的贪快与简便,却给代码架构的未来留下了坑。毕竟欲速则不达

坏的影响?

  • 导致代码难以维护
  • 可读性差
  • 低内聚:如果相同业务需要改动的话,那就要找出所有的重复代码加以改动。

如何解决?

提取出函数,将公共的部分统一进行封装,在需要的地方直接调用就可以了。

具体实例

class play
{
    public function playFootball(){

        $booking = new Booking(); // 预定类
        $booking->check(); 
        $booking->pay();
    }

    public function playPingPang(){

        $booking = new Booking();
        $booking->check();
        $booking->pay();
    }
}
// 打球需要预定 可以发现上面这个方法是不可取的 因为重复了而我们只需要改成下面这样就行了。
class play
{
    public function playFootball(){

        $booking = new Booking();
        $booking->reserve();
    }

    public function playPingPang(){

        $booking = new Booking();
        $booking->reserve();
    }
}
// 这样看起来是不是易读很多了 将预定的行为完全封装到 reserve 方法里面了。

重复代表的类型

  • 完全的复制粘贴代码;
  • 结构重复的代码;
  • if 和 else 代码块中的语句高度类似

DRY原则(不能重复原则)

编程代码原则:每一处知识都必须有单一、明确、权威地表述。

总结

作为程序员我们要有自己的坚守,千万不能因为偷懒而去复制粘贴。如果需要复制粘贴,首先应该做的是提取一个新的函数出来,把公共的部分先同意掉。
要记住:不要重复自己,不要复制粘贴

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值