摘要面向对象(Object Oriented )是一种软件开发方法。 面向对象的概念和应用是超越编程和软件开发,对现实世界的理解和抽象的方法,是计算机编程技术发展到一定阶段后的产物。
面向对象是指相对于过程导向,将相关数据和方法集中在一起,从更高层次系统地建模,接近事物的自然运行模式。
从过程导向向对象导向思想层面的转变:过程导向关注执行的过程,对象导向关注具备功能的对象。 从过程导向到对象导向是程序员从思想执行者到指挥者的转变。
例1 )问)把大象放进冰箱里需要分几步吗?
回答流程:第三步: 1打开冰箱门,第二放大象,第三关冰箱门。
面向对象,2步: 1招募可以操作冰箱的工人(对象),2指示工人进行大象操作。
思考:把问题改成这样,把100头大象按顺序放在冰箱里,一共分几步?
面向过程的回答:这里需要省略n个字。
对对象的回答还是两步。 1招募能操作冰箱的工人(对象);2指挥工人按顺序放大象。
结论:从上述板栗中发现,面对过程死板,不易适应变化。 面向对象更加灵活,复用性强。
例:一个人生活的时候,我们经常为怎么吃一日三餐而烦恼。
面向过程:每天,买菜-做饭-吃饭-洗碗的过程。
对象:招聘保姆,每天等着吃就行了。
场景升级:假设你是富豪,拥有占地3000亩的庄园,不仅仅关注饮食问题,还有花草树木修剪、游泳池维护清洗、卫生打扫、洗衣做饭。
面向过程:这里省略看着累的n字。
对象:招募管家,让管家招募园丁、游泳池维护人员、保姆等。
结论:上述板栗表明,面向过程,需要关注繁琐的过程。 面向对象并不关注具体细节,而是关注集成体系结构问题。 其实当我们进行大规模的APP应用程序开发时,如上例所示,如果我们编写程序只关注过程,在代码量达到一定的水平后,就很难再写下去了。 采用面向对象的思想设计编写程序时,我们设计这些对象,我们用这些对象来指挥这些对象就可以了。