(一)、面向目标的基本概念
  1、什么是目标
  l面向目标英文是ObjectOriented,拆开来便是
  -面向(Oriented)
  -目标(Object)
  概念:什么是目标
  l人间万物皆目标
  n悉数可见之物
  u一个白叟,一台笔记本
  u一个桌子
  u一个球员
  u一个女主播
  n悉数不行见之物也能够是目标
  u一个空气里的细菌
  u一个笼统的概念
  l笼统,顾名思义,便是抽掉了详细形象的东西。如:人,就能够说是一个相对笼统的概念,由于一个详细的人有性别、年纪、身高、容颜、社会联系等详细特征,但笼统的“人”便是不包括这些详细特征的一个概念,因而说它是笼统的;而详细的人的概念应该是张三、李四等。因而说,笼统概念一般是指的每一类事物,而不是某一个事物。
  2、目标的组成
  l目标组成包括两部分
  n目标的组成元素
  u是目标的数据模型,用于描述目标的数据
  u又被称为目标的特点,或许目标的成员变量
  n目标的行为
  u是目标的行为模型,用于描述目标它能做什么工作
  u又被称为目标的办法
  3、目标的特色
  l每一个目标都是绝无仅有
  n比方说张三便是张三,李四便是李四,你家的桌子便是你家的不是别人家的,而且你家卧室的桌子不是客厅的桌子,这些都不能混为一谈
  l目标是一个特定的事物,它的功能便是完成特定的功能
  n比方桌子,它便是一张桌子,它便是为了满足你吃饭的时分的需求,你能够把饭菜盛饭到上面,这样吃起来就便利
  n再比方球员,它的功能便是传球,运球,投篮,扣篮,这些便是他们要做的工作
  l目标它是能够重复运用的
  n比方球员詹姆斯,他打完一场篮球后,还能够持续打,不是说打完一场就结束了,不能再打了
  n再比方,吃饭的桌子,你吃完了,下次再吃的时分,还能够持续运用这张桌子,所以它是能够被重复运用
  n再比方,一辆车子,它从北京开到到广州,不是说它开到广州就报废了,而是能够往复很屡次
  4、什么是面向目标
  l面向便是指在编程的时分,一向把目标放在心中
  n比方你面向墙面,你一向看到的便是墙面,
  n比方教师讲课,它面向是谁,是学生,所以教师上课的时分要一向面临的是学生
  n面向目标,便是编程的时分,心里一向面向着目标
  l面向目标编程,指的便是在编程的时分,把悉数数据模型转换成目标的结构进行存储,
  n实际上便是编程的时分,咱们把一切的数据结构,转换成特点和办法这种目标的办法进行存储,咱们把这种办法就叫做面向目标编程
  5、为什么要运用面向目标
  目标的描述办法愈加贴合实在国际,愈加便利咱们了解大型项目的事务逻辑
  n咱们早期的时分是面向进程编程,便是每天讲的都是代码的组织结构,可是有了目标的描述办法后,咱们还能够说,我写的便是一个一个的目标,然后他们之间有各种互动
  n在程序规划的进程傍边,这种面向目标的开发办法拉近了代码和实在国际的间隔
  6、面向目标的本质
  l做任何工作咱们都需要调查事物的本质,那么面向目标的本质是
  n把生活中要处理的问题,都通过目标的办法进行存储,什么是目标办法的存储,便是把数据结构存储为目标的特点和办法
  u比方咱们要做一个家居软件,里边一切的家居咱们都能够用目标的特点和办法进行表示出来,比方它的大小,颜色,尺度等等
  办法有哪些呢,比方有的家居是能够折叠的,这个折叠便是它的办法
  u再比方一个球员,它的特点有什么,身高,年纪,团队,肤色等等,那办法呢,就比方运球,传球,投篮,扣篮等这些基本的技能便是球员的办法
  l目标和目标之间的互动,便是通过办法的调用来完成,这个有点笼统,后边咱们会通过实例进行详细的分析
  n举例
  u比方我从教室门口,走了大约10步,来到了讲台中心,紧接着我看向张三,然后问了一个问题,“你好,请问你叫什么姓名”,最后张三回复我:“你好,我叫张三”
  这个图里,目标分别是教师,学生,首先是教师调用了他自身的办法,办法的顺序依次是走,看,问,紧接着调用了张三目标的回复办法
  7、面向目标的基本思路
  l第一步:辨认目标
  -任何实体都能够称为目标
  l第二步:辨认目标的特点
  n目标里边存储的数据都是特点
  n关于不同的事务咱们要重视的特点是有所不同的
  u比方上面的场景中,咱们要用面向目标的办法把它复原,那么重视的特点便是姓名,身份,办法便是3个,走,看,问
  u比方女主播和球员都是人,可是由于事务不同,所以咱们重视的特点和办法也会不同,比方女主播,咱们更重视的是它的艺名,还有歌唱,球员咱们更重视的是他是哪个球队的,以及他球技
  l第三步:辨认目标的行为
  n比方说目标自己数据的改变都是行为
  n目标和外部之间的交互
  8、面向目标的基本准则
  l目标内部是高内聚的
  n只包括一项特定的功能(功能是可大可小)
  u比方说球员,他只担任打球,女主播只担任歌唱,虽然他们还能够做其他工作,可是由于事务不同,所以功能不同,然后其他的功能就没有包括进来
  n一切目标相关的内容都封装在目标内部
  l目标外部它是低耦合的
  n外部的国际只能看见目标的部分特点,看不到悉数的
  n外部国际只能看见目标的部分行为,看不到悉数的
  u这个高内聚低耦合不关是目标的一些基本准则,它也是咱们整个编程傍边的一个重要准则,特别是低耦合更重要一些,为什么这么说呢,由于一旦做到了低耦合,这样的话,目标之间的依赖联系会变得非常小,随之带来的优点便是,它的可维护性更高了,可扩展性也加强了,比方做一个游戏软件,这个球员的目标能够被多个游戏运用,这样在开发新游戏的时分,能够直接拿来运用,这样的话,复用性也增强了
  u高内聚的优点便是,你该有的都有了,尽量写全一点就不会呈现缺胳膊少腿的
  u高内聚低耦合它不仅仅只是咱们规划目标的时分的基本准则,它也是咱们编程的一个重要规划准则


阿猿啊
31 声望0 粉丝