为了账号安全,请及时绑定邮箱和手机立即绑定

Python——创建更加牛逼的对象

标签:
Python

    什么叫更加牛逼的对象?其实是一种更高级别的对象——管理对象

什么是管理对象:
    一种用来管理其他对象的对象,这种对象可以将一切都绑在一起

管理对象的作用:
    将工作委托给其他方法,只需按照规定好的顺序委托其他方法工作

好吧!有点晕乎乎的感觉!我想了个例子,比如系统打补丁。

操作系统打补丁一般需要经历三个步骤:
1、下载补丁
2、安装补丁
3、重启系统

那么,管理对象只需确保这3个步骤按顺序发生即可!!
下面的代码只是对事件的模拟,看下面的代码:

class Host:

    def __init__(self, hostname, ip):

        self.hostname = hostname

        self.ip = ip

 

    def patch_repair(self):

        #管理者方法(补丁修复顺序)

        self.download_patch() #下载

        self.install_patch() #安装

        self.reboot_system() #重启

 

    def download_patch(self):

        #补丁下载

        print("{} Start downloading the patch".format(self.hostname))

 

    def install_patch(self):

        #补丁安装

        print("{} Start install patch".format(self.hostname))

 

    def reboot_system(self):

        #重启系统

        print("{} Start reboot system".format(self.hostname))

 

if __name__ == '__main__':

 

    h = Host("pc001", "192.168.89.67")

    h.patch_repair()

似乎没毛病!那么这样做的好处是啥?
    1、增强可读性,每一个步骤的代码都是独立的,
    2、增强可扩展性,如果子类只需下载补丁的方法,那么就可以直接继承并覆盖它,重写它
    3、增强隔离性,一个外部类可以创建这个类的实例,可以直接使用其中的一个方法,而不是 patch_repair

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消