zoukankan      html  css  js  c++  java
  • 面向对象编程(oop)的变迁

    作者:匿名用户
    链接:https://www.zhihu.com/question/34018003/answer/132740170
    来源:知乎
    著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

    从概念上讲,面向对象的萌芽其实来自于Abstract data type,而 ADT 的概念最初应该是由 David Parnas 在 1972 发表的《On the Criteria to Be Used in Decomposing Systems into Modules》论文中提出来的。

    1973年,Simula 67 发表,Simula 67 通常意义上被称为第一个面向对象语言。

    1975年,是面向对象语言里程碑的一年,这一年 Barbara Liskov 发明了CLU 语言,面向对象编程的基石之一的里氏替换原则(Liskov substitution principle)就是她提出来的,说里氏是OO之母丝毫不为过(因为自此之后 OO 可以生子)。里氏之后可以说面向对象的很多理论都基本成型。

    1983年,Smalltalk 发表,被认为是第二个面向对象语言,Smalltalk 由 Actor model 中受到启示,使用了消息传递式的设计,这可以说是现代面向对象语言中 this/self 的原型;另外像 public/private 这样的概念也在 Smalltalk 中有了基本的雏形。

    80年代后期及90年代初期,面向对象范式成为了一时风潮,涌现了许多面向对象语言,其中一些至今仍然坚挺如 C++,当时甚至连 FP 的鼻祖 Lisp 都赶了把 OO 的时髦。

    最终,到了1996年,Java 发表,可以说是现代面向对象范式成熟的一个里程碑。

  • 相关阅读:
    HDU --1251
    POJ -- 2436
    POJ -- 3140
    POJ 3107
    POJ -- 2002
    POJ -- 1655
    lintcode154
    lintcode192
    lintcode582
    lintcode901
  • 原文地址:https://www.cnblogs.com/timlong/p/8175852.html
Copyright © 2011-2022 走看看