概述
面向对象和面向过程是从不同角度思考问题。比如我要做饭,炒一个西红柿鸡蛋,再炒一个土豆。按照常规的方法,我先洗西红柿,然后切,打鸡蛋,然后放油,放菜,放盐然后等它熟了就好了。炒土豆的时候先洗土豆,然后削皮,切土豆,放油,放菜,放盐,坐等菜熟。人们发现炒西红柿鸡蛋和炒土豆有好多共同的地方啊,比如说都要洗菜,切菜,放油,放菜,放盐等,但是他们也有一些不同之处,比如炒西红柿鸡蛋要打鸡蛋,炒土豆要削皮。如果写代码的时候写一遍洗菜,切菜等,到炒下一个菜的时候又要再写一遍,好麻烦啊,能不能不用重写,用的时候复制一下不好吗?所以面向对象应运而生。抽象出一个炒菜的类,比如能洗菜,切菜,放油等。等我想炒土豆的时候就实例化一个炒菜类,然后加上削皮这个功能就好了。
界面设计在编程中也是相当重要的。人靠衣装,马靠鞍,好看的界面用户也想用是吧? 但是界面得符合用户的工作特性,用户的能力水平等。再好的马鞍按到人身上也不合适,是吧?
详情
面向对象
首先从宏观上把握什么是面向对象。它包括3部分:面向对象是什么,分析设计的时候用什么样的方法,设计出的东西怎么来测试。
面向对象主要包括类,对象,继承,通信。那刚才的例子来说,类就是炒菜,对象就是具体的炒土豆,炒白菜等,而炒土豆,白菜是继承了炒菜的方法和属性,但是有拥有了各自的特征,比如土豆要削皮,白菜不用,这就叫做继承与多态。
编程时先抽象出来类和对象,然后就是以什么原则,什么方法来设计了。设计主要包括四部分,即人机交互,问题论域,任务管理,数据管理。
设计好就该测试了。测试和之前提到的软工中的测试一样,基本上都有单元测试,组装测试和确认测试。
界面设计
在界面设计的时候,首先分析用户,用户有什么特殊要求吗,用户的工作有什么特性,然后确定选择什么样的界面类型,再然后就是实践了,安排好计划,流程做就好了。
总结
面向对象是从一个新的视角去看待编程,就像网管里看到的企业进行改革主要是针对流程,就是把流程中功能相似联系紧密的整合到一块一样,面向对象就是把功能相近,联系大的过程,函数整到一个匣子里封装成类,以后要使什么功能直接调用这个匣子就行了,不用管里面是怎么实现的。这个就像电脑内存太小了,要装一个固态硬盘,我们就知道装上后存储空间就大了就ok了,不用知道固态硬盘是怎么构造的。我从界面设计中得到的收获就是一切以用户为准,我们要尽可能满足用户的要求。