我目前正在 Squeak 环境中学习 Smalltalk,并且正在阅读“Squeak - A Quick Trip To ObjectLand”。我带着一些 Python 和 Java 的先验知识进入了面向对象范式,书中第 36 页的这句话让我想到:
Smalltalk 是面向对象语言的基于类的实现。
句子虽短但很有趣。在面向对象中,所有术语(如类、对象、实例)似乎都有明确定义,并且似乎都指向唯一的真实含义,并且您可能会遇到诸如“对象是类的实例”之类的通用句子。
但你很少听说实施策略。什么是执行面向对象的概念在这种情况下意味着什么?除了类之外,还有 OO 语言的实现吗?
JavaScript 是一个原型基于 OO 语言的实现。
您无需对类进行子类化并创建该新类的实例,而是通过克隆原型来继承行为。
作为历史记录,我应该补充一点,虽然 Javascript 可能是使用最广泛的原型语言,但第一个是 David Ungar 和 Randall Smith 的自语 http://en.wikipedia.org/wiki/Self_%28programming_language%29.
有几个实施 http://russell-allen.com/squeak/prototypes/ of 漂浮在吱吱声中。我没有使用过它们,所以我无法对这些库发表评论。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)