首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏俗人笔记

    PHP中Trait知识点总结

    php trait A { public function smallTalk() { echo 'a'; } public function bigTalk() { echo 'A'; } } trait B { public function smallTalk() { echo 'b'; } public function bigTalk() { echo 'B'; } } class Talker { use A, B { B::smallTalk insteadof A; A::bigTalk insteadof B; } } class Aliased_Talker { use A, B { B::smallTalk

    1.3K80发布于 2018-07-27
  • 来自专栏Golang语言社区

    Runtime 中的消息机制

    为什么Objective-C里会有消息机制 这就是语言的基因问题了Smalltalk,之前在一本叫《代码的未来》了解到Smalltalk是一门比较古老的语言,在 Smalltalk 中一切皆对象,一切调用都是发消息 Objective-C是在C的基础上,借鉴 Smalltalk 的面向对象与消息机制扩展出来的语言,就像Golang语言天生自带并发基因。

    1.3K50发布于 2018-03-27
  • 来自专栏从零开始学 Web 前端

    面向对象编程OOP发展简史

    艾伦·凯(Alan Kay)大约在1966或1967年创建SmalltalkSmalltalk对对象的概念进行了改进,并探索了像小型计算机这样的对象的概念,或者像Kay所说的那样:“对计算机本身的概念的递归 在2003年的一次电子邮件交流中,艾伦·凯(Alan Kay)阐明了他将Smalltalk称为“面向对象”的含义: “对我来说,面向对象操作仅意味着消息传递,本地保留和保护以及状态过程的隐藏以及万物的极端后期绑定 此后,Smalltalk影响了许多OOP语言,包括Objective-C(1984),Object Pascal(1986),Erlang(1986),CLOS(1987年左右),Ruby(1995),

    1.4K20发布于 2021-04-20
  • 来自专栏Albert陈凯

    影响Scala语言设计的因素列表

    它的统一对象模型是由Smalltalk发起的,之后又被Ruby发扬光大。 把前缀的操作符视为函数的特别的思想可以被回溯到Iswim和Smalltalk。另一个重要的思想是允许函数式文本(或代码块)作为参数,从而能让库定义控制结构。 同样可以追回到Iswim和SmalltalkSmalltalk和Lisp两者都具有灵活的语法,广泛应用在建造内嵌的领域特化的语言。 其他在OOP里集成了函数式编程的一些元素的包括Ruby,Smalltalk和Python。在Java平台上,Pizza,Nice和Multi-Java都用函数式思想扩展了类Java内核。

    1.7K70发布于 2018-04-04
  • 来自专栏Python无止境

    Python 的元类设计起源自哪里?

    当时我对 Smalltalk 只有模糊的了解;当我后来读到它的元类设计时,我感到很惊讶,因为它与 Python 或 Ruby 中的元类有很大的不同! 但是,Smalltalk 的字节码对 Python 的字节码影响很大。 我在 Adele Goldberg 和其他人的一本书中读到过,好像是《Smalltalk-80: The Language and its Implementation》。 [smalltalk书] (译文完) 以上文章出自 Guido 的《The History of Python》系列,该系列主要是关于 Python 语言及社区的发展历史。

    54220编辑于 2021-12-22
  • 来自专栏前端布道

    界面之下:还原真实的MV*模式

    而几乎所有的MV模式都是经典的Smalltalk-80 MVC的修改版。 Smalltalk-80 MVC 历史背景 早在上个世纪70年代,美国的施乐公司(Xerox)的工程师研发了Smalltalk编程语言,并且开始用它编写图形界面的应用程序。 Smalltalk-80 MVC和GoF描述的MVC是最经典的MVC模式。 经典的Smalltalk-80 MVC不需要任何框架支持就可以实现。 所以可以看到经典的Smalltalk-80 MVC中Model通过观察者模式告知View更新这一环被无情地打破,不能称为严格的MVC。

    79620发布于 2018-07-25
  • 来自专栏luxixing

    PHP 5.3向更高版本迁移之新特性

    php trait A { public function smallTalk() { echo 'a'; } public function bigTalk() { echo 'A'; } } trait B { public function smallTalk() { echo 'b'; } public function bigTalk () { echo 'B'; } } class Talker { use A, B { B::smallTalk insteadof A; A::bigTalk insteadof B; } } class Aliased_Talker { use A, B { B::smallTalk insteadof A; A::bigTalk

    76140发布于 2019-05-30
  • 来自专栏Java知己

    为什么Java不是纯面向对象语言?

    Java语言不是纯面向对象语言,因为它包含以下属性: 原始数据类型例如对象 Smalltalk是一种“纯粹的”面向对象的编程语言,与Java和C++不同,因为作为对象的值和作为基本类型的值之间没有区别 在Smalltalk中,原始值,例如整数,布尔值和字符也是对象。 在Java中,我们将预定义类型作为非对象(基本类型)。

    1.4K40发布于 2019-09-11
  • 来自专栏开源优测

    Jenkins之必备groovy基础

    Groovy定义 Groovy是一种基于JVM(Java虚拟机)的敏捷开发语言,它结合了Python、Ruby和Smalltalk的许多强大的特性,Groovy 代码能够与 Java 代码很好地结合 Groovy语法 Groovy 语法与Java 语言的语法很相似,虽然 Groovy 的语法源于Smalltalk和Ruby这类语言的理念,但是可以将它想像成 Java 语言的一种更加简单

    4K20发布于 2020-02-25
  • 来自专栏维C果糖

    编程思想 之「语言导论」

    第一个成功面向对象的语言是 Smalltalk ,同时它也是 Java 所基于的语言之一。 Alan Kay(他是 Smalltalk 面向对象编程环境语言的发明人之一,也是面向对象编程思想的创始人之一,他还是笔记本电脑最早的构想者和现代 Windows GUI 的最初尝试者)曾总结了 Smalltalk

    1.2K190发布于 2018-03-16
  • 来自专栏行者常至

    02.RabbitMQ简介

    Erlang语言创始人Joe Armstrong当年在爱立信做电话网络方面的开发,他使用Smalltalk,可惜那个时候Smalltalk太慢,不能满足电话网络的高性能要求。 但Joe实在喜欢Smalltalk,于是定购了一台Tektronix Smalltalk机器。

    1.5K20发布于 2019-08-14
  • 来自专栏敏捷开发

    敏捷史话(十三):我被 Facebook 解雇了——Kent Beck

    1993年在《 Smalltalk 报告》上,Kent Beck 开始撰写关于 Smalltalk 模式的专栏,同时结识了另一位使用 Smalltalk 的同仁——Ward Cunningham。 Smalltalk 是个十分动态且特别适合重构的环境,周期非常短,因此很容易快速修改代码,也可以很快写出极具功能的软件。

    67530发布于 2021-04-08
  • 来自专栏逆锋起笔

    未来有望干掉 Python 和 JavaScript 的编程语言

    Pharo 是 Smalltalk 的现代变体,Smalltalk 是一种非常高效的面向对象编程语言。 实际上,Smalltalk 是面向对象编程的典范,它几乎启发了地球上所有其他面向对象编程语言的灵感。最后,没有一种语言比 Smalltalk 更适合面向对象编程了。 你可以在 15 分钟内学会 Smalltalk 的全部语法! 主要优点:它的工作效率非常高效,就像工作效率提高了 5 倍一样! 主要缺点:掌握这种语言,需要一种不同的编程思维。但人们往往害怕改变。 Smalltalk 布道师。退休的软件工程师。《复仇者联盟》粉丝。本文最初发表 Hacker Noon 博客,经原作者 Richard Kenneth Eng 授权,InfoQ 中文站翻译并分享。

    76410发布于 2020-02-21
  • 来自专栏用户10106051的专栏

    大白话给你讲清楚面向对象编程和面向对象编程语言的区别与联系

    面向对象语言借鉴了20世纪50年代的人工智能语言LISP,引入了动态绑定的概念和交互式开发环境的思想;始于20世纪60 年代的离散事件模拟语言SIMULA67,引入了类的要领和继承,成形于20世纪70年代的Smalltalk 面向对象语言的发展有两个方向:一种是纯面向对象语言,如Smalltalk、EIFFEL等;另一种是混合型面向对象语言,即在过程式语言及其它语言中加入类、继承等成分,如C++、Objective-C、JAVA

    1K30编辑于 2022-10-28
  • 来自专栏养码场

    编程语言简史:有人不喜欢花括号,于是他发明了 Python

    1980年 Alan Kay发明了面向对象的编程,并将其称为Smalltalk,在Smalltalk中,所有的东西都是对象,甚至一个对象也是一个对象。 1986年 Brac Box和Tol Move决定开发一个基于Smalltalk的C语言不可读版本,他们称之为Objective-C,然而却没有人能够理解它的语法。

    1.3K20发布于 2019-05-15
  • 来自专栏人称T客

    IT深度趋势:11种编程语言一度辉煌 缘何没落?

    11、Smalltalk ? 在这个名单上有几个巨型语言,几乎做了所有语言能做到的事情。Smalltalk不在其中。 Smalltalk是什么样的语言呢,它是一种导致计算机科学家给自己工作严格限制的语言。可以把它看作一个编程语言的规范。 Smalltalk是在1970年代末和1980年初由在Xerox PARC工作的许多计算机科学巨星创作出来的。它只保留了六个关键字组,并且在一个消息传递模型中操作。 当创建商业代码时,Smalltalk有两个主要问题:它需要很多很多的内存,应用程序的产出速度不快。你仍然会发现它被用作教学工具,但是你很难找到其重要的商业用途。

    1.6K70发布于 2018-03-21
  • 来自专栏JNing的专栏

    PyUnit学习

    而JUnit又是Kent设计的Smalltalk测试框架的Java版本。它们都是各自语言的标准测试框架。

    86710发布于 2018-09-28
  • 来自专栏DDD

    实现业务逻辑三种方式:事务脚本、贫血模型、DDD

    在当前流行的面向对象语言诞生之前,第一代面向对象语言其实是Smalltalk。而且当时架构风格都是单体架构,这样就有一个相对现在隐藏的背景条件:在同一个节点中,在内存中能得到所有的上下文信息。 如上图,可以看出整个smalltalk的整体体系,除了虚拟机之外,还有虚拟镜像。虚拟镜像相当于虚拟机内存中数据持久化。每次虚拟机启动时,都会把虚拟镜像中的数据恢复到虚拟机内存中。 像现在的Java,C++并没有像smalltalk一样处理,时代来到了分层架构时代,经过了一系列的演变从最初的CS架构到三层,多层架构。 历史的发展都有延续性和局限性。

    1.6K10编辑于 2022-06-07
  • 来自专栏顶级程序员

    因为对Perl和Python不满?圣诞节无聊?编程语言的出现都这么随意吗?

    纯面向对象语言:Smalltalk Smalltalk 语言诞生于 1980 年,是第一个完全支持面向对象编程的语言。 Smalltalk 源于 SIMUAL 67,完善并定义了消息发送,和对象的继承关系。在 Smalltalk 中,所有数据都是对象:消息的发送者,消息的接受者,消息,消息的结果…。对象的类型是类。 Self 源自于 Smalltalk。 Self 对面向对象做了深入与研究,提出了「万物皆对象」的思想。 所不同的是 C++以 SIMUAL 67 的面向对象为基础,Objective-C 以 Smalltalk 的面向对象基础。 Ruby 基本等于 Smalltalk + Lisp。 A.27.Web 服务器脚本语言:PHP PHP 诞生于 1994 年,是 Web 服务器脚本语言。

    2K60发布于 2018-04-26
  • 来自专栏企鹅号快讯

    编程语言简史:有人不喜欢花括号,于是他发明了 Python

    1980年 Alan Kay发明了一门面向对象语言,他把这门语言叫做Smalltalk,在Smalltalk中一切都是对象,甚至一个对象也是对象。没人真正搞得清楚small talk是什么意思。 1986年 Brac Box 和 Tol Move决定在Smalltalk的基础上制作一个C语言的不可读版本,他们把这门语言叫做Objective-C,但是没人弄得清楚它的语法。

    1.5K70发布于 2018-02-02
领券