周末午后,我正在愉快的打着王者荣耀,五杀在即之际。女朋友拿着一本我看过的《面向对象编程》过来找我。
什么是面向对象?是要面向我写代码吗?
不是啦,这个面向对象的对象不是你这个对象啦。
此时,我突然感受到了一股莫名的杀气。
什么?你还有其他对象吗?有我好看吗?有我瘦吗?不对。你不能有其他对象。
什么是面向对象?
面向对象,英文名字叫Object Oriented,是一种软件开发方法。是和面向过程相对应的。
别给我拽英文。给我详细说说,说不明白今天就没完。
我有点饿了,要不然你给我做点饭,我慢慢的详细给你讲吧。
我现在就想听你给我讲,咱们直接点外卖吧,别自己动手做饭了。
其实,对于吃饭这件事儿,就可以分为面向过程吃饭和面向对象吃饭。自己亲自下厨就是面向过程,点外卖就是面向对象。
在面向过程的吃饭中,我们想要填饱肚子,需要自己亲自下厨把这顿饭做出来,那么,我们就需要先想好吃什么、然后去买菜、洗菜、洗米、蒸饭、炒菜等等一系列的事情。
pubic void 做饭(){制定菜单();
买菜();
洗菜();
洗米();
蒸饭();
炒菜();
}
那么,你说和点外卖相比,自己做饭有哪些缺点啊?
那还用说,麻烦呗。
的确,面向过程编程也一样,由于想要完成做饭这件事,需要自己定义很多个方法。除此之外,还有很多遇到很多其他问题,比如:
我不想吃米饭,我想吃馒头。上次买的菜家里面还有,不需要去买菜。中午吃剩下的菜家里面还有,直接热一热就可以吃了。这次去的一家超市提供洗菜服务,不需要我们自己洗菜了。以上这些突发事件,在编程中就叫做需求变更或者新的需求,这种事情发生是必然会发生的。
那么,有新的需求了怎么办,上面这种自己动手做饭的场景,就只能重新拼凑咯。