葵花宝典读书笔记-面向对象

面向对象编程思想不再局限于计算机本质,更侧重于对现实世界的模拟。对现实世界模拟的思想,本质就是人的思想。

在面向过程中,有一个类似于中央控制器的角色统一调度。面向对象中,没有这样的角色,也不指定严格的操作顺序,而是设计了许多对象,指定这些对象需要完成的任务,以及这些对象如何对外界的刺激作出反应。

如果说面向过程像一条生产流水线,那么面向对象就像一个足球队。每个球员有自己的行为和自己的特长。没有那个人可以从比赛的开始,就可以规划每个球员的每一步走位、出脚、传球....而是只能指定每个球员的角色(前锋、中场、后卫),然后由球员自己根据情况作出反应。世界上可以有两条一模一样的生产线,但不可能有一模一样的两场球赛。

现实世界中,对象无处不在。人的大部分时间都是按照对象的方式思考。所以,面向对象编程的总结:程序=对象+交互

原文地址:https://www.cnblogs.com/mysic/p/8448755.html

时间: 2024-08-02 10:08:15

葵花宝典读书笔记-面向对象的相关文章

葵花宝典读书笔记-面向对象的应用范围

1.能做什么? 面向对象的核心是"可扩展性".因此,经常变化的地方就是面向对象应用的地方. 软件系统中,经常变化的地方主要集中在客户需求部分,不变的一般都属于计算机系统的基础. 2.不能做什么? 从上图可以看到"可扩展性"只占软件质量属性中的一小部分,其他部分都是不面向对象可以解决的.因此明白了面向对象的特点,是应用面向对象的关键. 面向对象不是瑞士军刀,只是普通的锤子而已,不要尝试所有的问题都用面向对象的思想去解决. 原文地址:https://www.cnblog

葵花宝典读书笔记-面向对象的迷思

从语言层面的处理机制上讲,面向对象的方式肯定比面向过程的方式效率要低一些.所以,对性能要求高的,例如操作系统.驱动程序.网络设备程序都是由C语言编写的.(C语言虽然提供的编程模式是面向过程的,但是同样可以以面向对象的思想来写程序,只是它没有太多机制支持面向对象方式编写程序,不是很方便而已.) 很多人认为面向对象的效率会导致性能很差,经常用C语言和JAVA语言做比较来说明观点. 程序系统的运行效率更大的取决于设备的IO速度. CPU:每秒10亿次,性能是纳秒级 内存:每秒1000万次,每次请求时间

葵花宝典读书笔记-为什么要面向对象

面向过程和计算机如影随形,从计算机诞生之日起,面向过程一直占主导地位.C语言.操作系统.协议栈.驱动系统.都是面向过程的代表. 为什么会有面向对象诞生并流行呢?面向过程是可以看作是流水线,那么流水线有个缺点:流水和原料是相对固定的,扩展起来很麻烦.比如啤酒生产线,操作的原来是啤酒原料,生产的步骤是生产啤酒的步骤,如果现在要生产醋,那么就得修改流水线上的设备和生产流程,或引进一条新的流水线.前面说过,面向过程设计解决了面向机器的复杂性问题,面向对象则解决的是扩展性和可维护性问题. 工业上,对生产线

葵花宝典读书笔记-面向过程

面向过程是一种以"过程"作为中心的编程思想,"过程"就是"完成一件事的步骤".面向过程是一种"机械的思想",就像流水线一样,一个阶段衔接一个阶段,环环相扣.每个阶段都有自己的输入.处理.输出的步骤.运用面向过程方法时也要设计这样一条流水线:将程序划分为不同的阶段,设计好个个阶段如何衔接,定义好每个阶段要处理的数据. "程序=算法+数据结构" 这个总结正好契合机械化的特征.计算机本质上是一台机器,其核心CPU

葵花宝典读书笔记-类

一,类的定义 类是一组相似事物的统称 "一组"  在于多个,单个事物无法成为一个类."人"可以是一个类,但"我"就不是一个类. "相似" 比较像,但不完全相同.奥巴马,克林顿都是人类,但他们并不是相同的一个人. "统称" 具有概括性.奥巴马.克林顿可以统称为人.男人.动物.总统.但不会统称为奥巴马,因为奥巴马是具体的一个人. 二,如何划分类 角度决定看法.如何划分类,要看所站的角度. 你.我.猪.鱼.松树

葵花宝典读书笔记-对象

对象就是一个具体的类,就是一个类的实现. 对象是客观存在的,世界万物皆对象.人类为了归纳,总结,而把具有相似性的对象归类到一个类中.真正存在于软件运行过程中的是对象,而不是类. 软件对象产生的过程: 现实对象->现实类->软件类->软件对象 "软件类来源于现实类,但高于现实类"这句话的意思是.软件类不一定在现实中就存在对应的现实类.大多数软件类抽象于现实类,但他们之间并非一一对应,一个现实类可能对应多个软件来.例如:ATM是一个现实中的类,转化成软件类后就有"

葵花宝典读书笔记-接口

接口,英文interface,拆开看就是inter 和 face inter 有互相的意思,其含义强调两方的交互. face 面,对应的是点和线.很形象的体现了功能的多样性.可以看作是多个功能点的集合组成的一个功能面,通过它可以与多个功能点进行交互.但是功能点有很多,哪些才是属于一个面的?接口的定义是:接口是一组相关的交互功能点定义的集合.这就解释了如何去划分哪些功能点是一个面的. 接口强调的是双方的交互,如果只有一方,那么就不是交互了,也就不存在接口. 接口的功能点只是定义,不涉及具体的实现.

把书读薄之《面向对象葵花宝典》阅读笔记-面向对象基础

<面向对象葵花宝典>是网友爱技术的华仔的一个技术专栏里的文章,我在逐篇阅读之后,最大的感觉就是这个面向对象编程系列是货真价实的来自技术前线工程师的经验之作,是作者工作经验的总结和升华,对面向编程的方方面面有指导意义,在这里强烈推荐给面向对象领域的朋友们,原文链接如下:http://blog.csdn.net/column/details/oobaodian.html 以下是个人阅读之后,基于xMind做的读书笔记的整理,将我个人认为特别有价值或者说对我比较有感触的知识点,记录如下,以便随时翻阅

《JavaScript面向对象编程指南》读书笔记②

概述 <JavaScript面向对象编程指南>读书笔记① 这里只记录一下我看JavaScript面向对象编程指南记录下的一些东西.那些简单的知识我没有记录,我只记录几个容易遗漏的或者精彩的知识点,以后再看也可当做拾遗之用! 内容 1.枚举属性用for-in循环显示. 2.当我们对对象的prorotype属性进行完全重写时,有可能会对对象constructor属性产生一定的负面影响. 3.uber--子对象访问父对象的方式Triangle.uber = TwoDShape.prototype 4