zoukankan      html  css  js  c++  java
  • 面向对象思想的起源

    所有对事物的认识都始自于我们不愿盲目地接受这个世界       一一艾伦. C.凯

    我的父亲是科学家,母亲是艺术家,所以在我童年的家庭氛围中充满了各式各样的想法,以及各种各样表达它们的方式。
    我至今也从未把“艺术”和“科学”分开过。  ——艾伦·凯

    1940年,艾伦·凯出生在美国的马萨诸塞州 , 凯3岁的时侯学会了阅读,小小的他经常沉醉在书的海洋里。同时他从母亲那儿接受了音乐的熏陶,不仅是学校合唱团的男中音独唱,还会演奏吉他。
    那时的他觉得自己未来肯定会成为一位音乐家。后来,他进入美国空军服役,遇到了一个改变命运的契机:通过了计算机编程能力测试,成为了一名程序员,为空军解决各个航空训练设备之间数据和过程(procedure)的传输问题。

    这时他发现有个程序员想出了一个聪明的办法,就是把数据和处理数据的过程捆绑到一起发送。

     通过这种方式,新设备里的程序就可以直接使用过 程,而不用去了解数据文件的格式。 这种抛开数据、直接操作过程的想法给凯带来了极大的 触动,为他日后形成“对象”的概念埋下了伏笔。

     服役结束后,凯先从科罗拉多大学取得了数学和分子生物学的双学位。后来因为对计算机很感兴趣,他最终决定去犹他 州立大学读计算机科学系。读书期间,他一直在寻找某种基 础构件,支持一种简  单、有效的编程风格。这时他的生物学 知识给了他至关重要的灵感。

    我的灵感就是把这些(指对象)看做生物学上的细胞。                     ——艾伦·凯

    1)每个“例”细胞都遵从“主”细胞的某 些基本行为  

    2)每个细胞都能独立运作,它们之间由能 透过细胞膜的化学信号进行通信

    3)细胞会分化---根据环境不同,同一个细 胞可以变成鼻子的细胞,也可以变成眼睛 或者脚趾甲的细胞

     这已经是提出面向对象思想 的黎明时分了!!!

     预测未来的最好办法,就是把它创造出来。                   一一艾伦. C.凯

    1971 年夏天,艾伦.凯负责设计一种新的语言,名字叫做 Smalltalk Smalltalk的设计确实与生物学上的类比相吻合:

    相互独立的个体(细胞)通过发送讯息彼此交流。每一条讯息都包含了数据、发送者地址、接收者地址, 以及有关接收者如何对数据实施操作的指令。
    凯希望把这种简单的讯息机制贯彻到整个语言中去,这些想法组成了“面向对象”的核心内容 。面向对象在20世纪90年代变成了软件设计的基本方法与技术! 它更贴近人类思维的特点!

     艾伦.凯的观点:

        1. “预测未来的最佳方式就是去创造它” 

        2. “愿景重于目标”

    3. “我把对象想象成生物细胞或者和网络上的单个计算机,它 们之间只能通过消息进行通讯”-- 作为微生物学家背景

    4. 每个对象可以有多个代数与之关联,这些代数关系可以构成 家族,而这些概念会非常非常有用  --作为数学家背景

    5. 他提倡应该关注消息机制和模块间的松耦合和交互,而不是 模块内部的对象组成:

    6. 做出非凡和可成长的系统的重中之重是设计好模块之间如何通讯, 而不是模块应具有什么样的内部属性和行为方法

     

  • 相关阅读:
    第36课 经典问题解析三
    第35课 函数对象分析
    67. Add Binary
    66. Plus One
    58. Length of Last Word
    53. Maximum Subarray
    38. Count and Say
    35. Search Insert Position
    28. Implement strStr()
    27. Remove Element
  • 原文地址:https://www.cnblogs.com/cdlyy/p/12348287.html
Copyright © 2011-2022 走看看