• 如何设计类 荣


    在工作中,我们经常用到类,怎么写好类呢?这个问题我思考了很久。

    如果想写好类,最好是站在类的使用者的角度上来看待类。我们既是类的实现者,也是类的使用者,所以这应该不难。

    类有这样几个使用者:
    1:类的调用者
    2:类的维护者
    3:类的阅读者

    站在这些使用者的角度上看,什么样的类是好的类呢?
    1:低扇入:调用的其他类很少
      如果类调用的其他类越少,使用起来越方便,以为不用担心会受到其他类的影响。
    而且如果哪一天我们想把该类拷贝到其他地方用时,也不用再继续拷贝其他类才能使当前类运转起来。
    3:接口简洁
    一个类,提供的外部可见成员越少越好。一个有3个函数的类和一个有30个函数类给人的感觉就不一样,让人觉得有3个函数的类简单,好用,有30个函数的则相反。
    2:封装好:
    把private函数写成public类型的,会增加函数的数量。

    4:函数参数少
    一个函数有5,6个参数,用的时候需要照顾参数的顺序,理解每个参数的含义,让人觉得这个函数很麻烦,很容易就把参数的顺序搞错了,或把第n个参数的含义和第n+1个函数的意义给搞混了。

    5:参数多的函数,对参数进行结构化
    如果某个函数有多余6个的参数,则最好把它写成结构。例如调用某添加函数,拿职工来说吧,有部门、性别,姓名,工号...,在某个函数中,把这些信息用参数传进去很麻烦,但是把这些信息写成一个职工对象,添加的时候,传一个职工对象进去,则就方便多了,看起来也清爽啊,不会弄混参数的顺序和参数的含义。

    6:函数的调用与调用顺序无关。
    在调用函数A之前,必须调用函数B,在调用函数B之前,必须调用函数C,这是不是很让人郁闷啊。
    命名调用函数A,就必须知道B,C是干什么的。让人觉得不爽。

    7:注释明白,完整
    如果我是个看代码的,我觉得一行行看代码很累,往往要阅读很多的代码,才知道这个类,这个函数是干什么的,他们之间是如何跳转的。他们所隐含的含义往往需要猜测。
    为了看代码人着想,我们在每个类的头部,大体描述一下我们怎么想的,怎么构思的这个类。
    给每个变量,函数添加上正确的注释,是一件有功德的事情。

    8:高扇出:将会被用在很多地方
    写同一段代码,使用的次数,地方越多,越有成就感。
    需要修改时,只修改这一个地方,就能对很多地方产生影响,多爽啊。
  • 相关阅读:
    人工智能理解
    24个提高你的知识和技能极限的数据科学(机器学习)项目(免费)
    5个优秀的计算机视觉应用与相关数据集
    5行代码使Scikit-Learn参数学习速度提高5倍
    如何在PyTorch和TensorFlow中训练图像分类模型
    六个月的机器学习 / 计算机视觉工程师
    NLP:不要重新造轮子
    用遗传算法优化垃圾收集策略
    使用Detectron2分6步进行目标检测
    五篇值得阅读的ECCV 2020 图像识别相关论文
  • 原文地址:https://www.cnblogs.com/admin11/p/1263868.html
Copyright © 2020-2023  润新知