对代码封装的一点思考

2019年10月25日 / 11次阅读 / Last Modified 2019年10月26日

最近写了不少python代码,结合自己以前C的经验,越来越感觉到一个软件设计思想的明显趋势。其实,很多技术的出现,都是为了干一件事情,代码封装!

从C语言的多文件编译链接,到OOP面向对象的封装思想,再到AOP的切面的统一处理,以及python的函数闭包和@装饰器,都是在做代码封装这件事情。让做同一件事情的代码,只写一次。

代码封装有什么好处呢?

  • 代码解耦,相互之间不再强相关后,逻辑更清晰;
  • 封装良好的代码,每个部分都可以独立维护,维护成本低;(某个部分只要保持接口和功能不变,内部实现可以不断变化)
  • 封装良好的代码,具有更好的复用性,复用越多,需要写的代码就越少,维护更简单,成本就越低,开发速度越快;

仔细想想,就是两个关键词,简单,低成本。简单,也是低成本的另一种表述。

工业的逻辑,就是大规模生产来降低单位成本,提高效益。软件工业,还在在延续这样的思路,要简单要低成本,只是软件天生就不存在规模的限制而已,获取软件的低成本,主要就是计算企业程序员的工资。代码封装良好,代码简单,就不需要那么多高级程序员,代码量少,也不需要那么多开发维护人员。

而把事情做简单,提高效率,是一种本质内在的人性需要。提高生产力,是一件自然而然就要去做的事情。少有人能够忍受日复一日年复一年完全不变的重复,在不断地重复的过程中,人性自然就回去思考如何更简单更高效。否则,人何其为人......

从这个角度看,其实各位同行就可以调整一下心态,面对新技术出现的时候,静下心来好好学习,一般新技术的出现都是解决了部分以前的问题,或者提高了编码效率。我们应该去拥抱这样的技术,甚至自己去发明这样的技术,而不是简单的重复已经学会的技能,每天编码如果没有新技术带来的成长,就真的成了码农了!

python可以在哪些层面封装代码?

  • 模块,一个.py文件就是一个模块,一般我们会把某一部分强相关的代码,或者某一类功能接口,放到一个模块内;
  • 函数,函数是对代码的最小封装,不过在python中,函数也是一个namespace,在函数中可以定义嵌套函数,嵌套的函数只能被包含嵌套的函数调用;
  • 类,OOP思想,对问题空间的某些部分进行面向对象的抽象;
  • 切面,AOP思想,对软件流程中的某些关键点进行统一的操作,在python中,基本都是通过装饰器来实现AOP编程。

-- EOF --

本文链接:https://www.pynote.net/archives/1386

相关文章

    留言区

    《对代码封装的一点思考》有2条留言

    电子邮件地址不会被公开。 必填项已用*标注

    • 麦新杰

      分层,就是封装。底层提供机制,上层提供策略,一层层往上。 [回复]

    • 麦新杰

      硬件有何尝不是封装呢?从门电路开始,从最简单的开始,一层层越来越庞大和复杂。但是,最基本的,都是大量最简单的东西。 [回复]


    前一篇:
    后一篇:

    More


    ©Copyright 麦新杰 Since 2019 Python笔记

    go to top