第一篇博客,先来随便记录一下自己的学习历程吧。
很多人是不是都在想,为什么要用类?我直接写方法不是一样能达到目的吗?
我一开始也这么想,可你逐渐接触更加复杂的需求,就会发现其中的问题。
先来说下类的好处。
- 复用性(如果你用函数写,就要复制整块代码修改,代码量奇大,修改时还总容易出错)
- 扩展性(函数写段代码,若要升级、扩展,都十分复杂,易出错,用类来扩展,简单快捷)
- 方便维护(领导频繁让你修改,你写了一百个方法,难道逐一去改?类修改就跟简单,变动参数即可)
这么说可能还不是很明白,那我们就举个例子:
你是一个厨师,你的职责是做菜,你一天要做500道不同的菜,炒土豆,炒豆芽,炒肉,溜肥肠,炸鸡等等....,按照正常程序,你是不是炒菜要经历 洗锅-->热锅-->倒油-->倒菜-->炒菜-->放鸡精,味精,盐等等调味料-->出锅装盘
如果让你写程序,你要500道菜都写一遍这些流程吗?这个重复量很大。
# 炒豆芽--直接写方法
def cook1():
print("起锅")
print("烧油")
print("放豆芽")
print("放调料")
print("收锅装盘")
# 炒土豆
def cook2():
print("起锅")
print("烧油")
print("放土豆")
print("放调料")
print("收锅装盘")
# 炒豆角
def cook3():
print("起锅")
print("烧油")
print("放豆角")
print("放调料")
print("收锅装盘")
.....
cook1()
cook2()
cook3()
.....
其实区别的内容大家很容易发现。就是倒菜这一步有所区别而已。那你将其他步骤封装成类,只输入菜的名称,不就大大简化了吗。
同理,你不炒菜,你油炸,将除了放食物这一步外的其他步骤封装,只输入要炸的内容即可;
这样不管是什么需求,再添加一个新需求,比如创造了一个新的菜,它的共需也不外呼煎炒烹炸这些,很容易就可以进行修改。不会增加额外的工作量。