OO在哲学上是正确的

07-12-17 yqj2065
         

Java是命令式对象范式,这一点好像没有人注意。摘录一段大家讨论一下:


不同于基于图灵机的命令范式和基于λ运算的函数范式,面向对象编程范式没有直接的理论模型来源。它似乎如同拼地图的男孩那样,仅仅是因为思考方式发生了变化,所以它的逻辑体系就自然出现了——对象/类、继承、方法改写、对象的替换性等等。虽然各种面向对象编程语言吸收了命令范式和函数范式大量技术,它之所以被称为“新”范式,正因为它采用了完全不同的看待程序的视角。
除了新的思考方式,它还剩下什么呢?
面向对象编程范式在哲学上是正确的——它是真正的人的思路。




         

banq
2007-12-17 12:47

>仅仅是因为思考方式发生了变化
角度决定深度,思路决定出路,思路高于知识,这就为什么解释社会上不少成功者都是学历不高的人。世界上没有一个东西只有利,没有害的,这就是辩证法或称为老子的道。

yqj2065
2007-12-17 17:38

请教banq先生
在大学一年级讲授编程导论,使用面向对象优先的方式、Java语言

在这种条件下,你认为是否能够(或者说合适)介绍一些简单的模式?
还是介绍LSP、OCP这些比较好?

banq
2007-12-18 17:37

>你认为是否能够(或者说合适)介绍一些简单的模式
对于大一学生,主要是让他们了解OO是什么?不必太深入,深入也没有用,需要一些实战经验,所以,通过简单介绍Adapter/Facade/Proxy/Command等几个模式,让他们透过模式了解OO是个什么东西(如接口有什么用)就可以。这一点非常重要,其实很多老程序员做了很多年程序,但是自己还是没有准确把握OO是什么,容易受到误导,这也是当前软件领域跟风浮躁原因之一。
[该贴被banq于2007-12-18 17:38修改过]

yqj2065
2007-12-18 19:56

谢谢回复。

2Go 1 2 下一页