怪怪 | Nothing, Everything

"有过一个发疯的时刻,有感觉的钢琴以为它是世界上仅有的一架钢琴,宇宙的全部和谐都发生在它身上." - 狄德罗
随笔 - 109, 文章 - 3, 评论 - 2075, 引用 - 60
数据加载中……

我们应该讨论什么? 就面向对象的讨论所引发的一些思考

不参与具体应该如何学习和实践的讨论了, 我要学会沉默。 但是愿意相信我的人, 我还是可以有一些建议。

对于初学者, SICP这本书的学习如果能早于谭浩强的C, 和面向对象方法, 绝对有好处。 然后在学习了C和更高级的面向对象方法之后, 反过来再读SICP, 又会在后者上有所提高。 当然, 对已经学习了命令式编程的兄弟来说, 后学SICP,虽然会有些别扭, 如果能够保持一个初学者的良好心态, 也仍然有所助益。

面向对象不是唯一的方法论, 也不太可能是最完善的一种方法论, 之所以流行, 其深刻原因也不是我们能回答的。 只是提醒大家, 有一种现象, 叫做劣币驱逐良币(我并没有说它一定是)。 但是无论好坏,现在面向对象的周边配套设施却是最齐全的, 考虑到这一点, 不逐渐深入掌握面向对象的各方面常识, 对于我们平时的顺利工作来说又是不行的。

只是学习面向对象的方法, 不见得一定是从常规入手; 当然, 对于一些人来说, 常规是结构化->面向对象, 对于另一些人则意味着直接开始面向对象的学习。

在这里再次强调一下我的体会。 目标驱动作为, 问题驱动学习, 这是最好的办法。 第二点就是对好的东西的认知, 第三点是孜孜不倦的改进。 这些东西没达到一定的程度, 学习什么、认可那种, 也会经常走到半路, 就停止了, 然后自以为看到了全部的风景。

反过来说, 对大多数人的生活和工作来讲, 达到一定水平已经足够了, 更加深入反而是低效的, 争论其实也是不必要的, 怎么舒服怎么来就可以了。 对于这种情况, 我们认同的东西, 即使它有缺陷, 对我们也不会有更多的损害, 因此我们最佳的策略是到此为止。 在这一点上我还是相当乐观的: 认识的误区即便是个瘤子, 也不见得就有多毒, 在医疗上也不是倾向于对任何一个异常都下刀子的, 不是吗?

然而设立停止点不代表从今天开始就不用学习了, 对一个普通的行业从业人员, 不学习就意味着淘汰。 只是在这种策略下, 我们讨论和学习的重点, 不应放在证明自己的选择好坏上, 而是在已经做出了选择之后, 在这个选择的范畴之内, 如何做的更好这一议题上。

对于选择不同的人, 其实更多应该是划分自己的小圈子内部讨论如何改良, 而不是急于去证明自己的决策。 当我们去其它小圈子的时候, 更多的应该抱有一种看看有什么可以借鉴的的目的,而不是形成在世界观、 方法论、 学习过程上的对立。 能得到别人观点的启发, 对自己是最有利的, 而不是对抗。 Strustroup这样语言圈子里的人上人,都不选择评价语言的好坏这一行为, 更何况于你我呢? 而php、ruby炮轰Java, 人家那是有商业目的的, 咱们更多的似乎应该是求同存异吧。

再比如那些最坚决的面向对象支持者, 人家Linus炮轰C++的时候, 基本把整个面向对象方法论都给否定了, 你可以试着去回复他的论点, 但有几个人觉得自己在资格和水平上(后者更为关键)能够和他平等的对话呢? 估计, 因为Linus几句话, 因为他的权威属性, 否定自己的选择的人也不多。 关键是他那些刀刀见血的言论, 会对我们有什么启发; 没得到收获, 也无所谓, 这说明我们的工作碰到他所抨击的问题的概率比较小, 那么把它们当作其它世界的存在就可以了。

说是沉默, 还是写了这么多。 抱歉我不会在此贴及其回复中谈及我对面向对象的看法。 不过未来我会逐渐介绍一些在采用其它语言范式和仅仅采用C#或者C++这样一种特定语言时, 面向对象和面向对象技巧的一些非面向对象的替代方法,它们当中有些更加适合特定的场景; 当然也会介绍一些面向对象方法内部的经验。 因为关键的总是如何改进, 而不是选择什么。

解决问题, 才是我们应该做的。

posted on 2008-05-11 16:51 怪怪 阅读(3519) 评论(29)  编辑 收藏 网摘

评论

#1楼    回复  引用  查看    

果然比我的文章有深度...佩服一个.
解决问题确实是至关重要的, 它关乎我们的肚子和我们的腰包. 因此, 我并不明确支持任何一种设计思想 - 大凡能解决问题的, 就是在这个场景下适合的.
其实我的学习也是完全杂乱的, 用到什么学什么, 没有很明确的体系; 但是这样可以解决问题, 这就够了. 至于我, 是不想做所谓的计算机科学家的; 我更喜欢管理, 而不是被人管理 :D
2008-05-11 16:57 | 随风流月      

#2楼 [楼主]   回复  引用  查看    

@随风流月
呵呵, 像你这样的天才少年, 现在就考虑肚子和腰包,做出对自己的职业规划, 未必是获得幸福(而不是权力和钱)的最好途径哦。

个人建议, 仅供参考。
2008-05-11 17:02 | 怪怪      

#3楼    回复  引用    

哇,我刚还说还是这边清静呢,打算泡杯茶慢慢看呢,没想到一个不小心给刷新了,原来战火烧到这边来了...哈哈..
2008-05-11 17:09 | Joanna [未注册用户]

#4楼    回复  引用  查看    

@怪怪
我一直说我太理性和务实了, 缺乏感情色彩, 果然是这样的. 很多人曾经指出过这个问题, 然而我还是没有找到一个中庸的方案 - 嗯, 我还是一个 Christian, 这意味着我可以从 GOD 而非自己寻求出路.
2008-05-11 17:13 | 随风流月      

#5楼    回复  引用  查看    

@随风流月
你居然是Christian?
2008-05-11 17:19 | Jeffrey Zhao      

#6楼 [楼主]   回复  引用  查看    

@随风流月
呵呵, 说不准你这个是表象呢, 所谓的补偿人格, 正是心里的柔软, 让自己看起来、行动起来、自我认知为, 一个相反的人 :)

自己最难对付的。

@Joanna
呵呵, 只当娱乐一下就好了 :)
2008-05-11 17:20 | 怪怪      

#7楼    回复  引用  查看    

@怪怪
貌似你研究心理的说 - 我最近也关注了一段时间, 貌似我是一个 ENTJ/ENTP 的说. :)

@Jeffrey Zhao
没有错, Christian.
2008-05-11 17:25 | 随风流月      

#8楼 [楼主]   回复  引用  查看    

@随风流月
呵呵, 我不算研究, 就是乱七八糟的看过一点。 其实关键是找准“努力成为的人”和“到底是什么人”之间的区别。

类似于柏拉图和麦穗的那个例子, 太早做判断不是一个最优解, 所以冒昧的做一个提醒 :)
2008-05-11 17:31 | 怪怪      

#9楼    回复  引用  查看    

@随风流月
不像啊……
2008-05-11 18:41 | Jeffrey Zhao      

#10楼    回复  引用  查看    

我相信我是唯一将此文认认真真读两遍的人,第0遍精粗读:一目十目,感觉不错;第1遍完整读;第2遍完整读;接着,收录到“针式PKM”中经常读
2008-05-11 18:51 | 个人知识管理      

#11楼    回复  引用    

空谈误国!
做点好东西出来才是真的!
什么时候写程序变成八股文倒也奇怪了。
面向语言编程才是趋势, 这已经被linq证实了。

领域语言--》中间码---》机器码
会计动词--》linq--》DB
名词=对象
动词=方法
忘记对象吧, 因为以后我们关心的是名词和动词


2008-05-11 19:32 | 一个农民 [未注册用户]

#12楼    回复  引用  查看    

关注那篇文章来者,想写的东西都没写成。
2008-05-11 19:34 | 金色海洋(jyk)      

#13楼    回复  引用  查看    

@一个农民
面向语言? 我们应该有自然语言编程才对...
2008-05-11 19:35 | 随风流月      

#14楼    回复  引用  查看    

你的意见很不错,不过你好像比喻错了,劣币驱逐良币是劣的代替优的,在人类历史上银币代替了金币,后来铜币代替了银币,最后纸币代替了铜币。而技术上真好是相反的,现今的技术会代替落后的,优秀的代替拙劣的,所以说科技是第一生产力。
2008-05-11 20:07 | 信息加油站义工      

#15楼    回复  引用    

面向业务~~~其实因该
2008-05-11 20:53 | 石桥头 [未注册用户]

#16楼 [楼主]   回复  引用  查看    

@一个农民
我是中间派, 没你这么激进 :)

@信息加油站义工
你觉得我比喻错了, 说明就某个谁好谁坏的问题, 你心中已经有了自己的答案 :)
2008-05-11 20:55 | 怪怪      

#17楼 [楼主]   回复  引用  查看    

@石桥头
面向业务不是具体设计和编程时候的方法论, 这种说法在具体层面仅是一种指导。
2008-05-11 20:56 | 怪怪      

#18楼    回复  引用  查看    

呵呵,楼主这篇博客风格和以前不大相同和,语气平和多了。有深度,但又不泛泛而谈,喜欢看你的文章,每次都有一些共鸣,虽然不敢苟同你所有的观点
2008-05-11 22:51 | 横刀天笑      

#19楼    回复  引用  查看    

犀利,独道
2008-05-11 23:03 | Zhuang miao      

#20楼    回复  引用  查看    

学习了
2008-05-12 00:50 | 狼Robot      

#21楼    回复  引用  查看    

目标驱动作为, 问题驱动学习, 这是最好的办法
能得到别人观点的启发, 对自己是最有利的, 而不是对抗。
2008-05-12 02:00 | 镜涛      

#22楼    回复  引用  查看    

“不过未来我会逐渐介绍一些在采用其它语言范式和仅仅采用C#或者C++这样一种特定语言时, 面向对象和面向对象技巧的一些非面向对象的替代方法,它们当中有些更加适合特定的场景”

感觉这句话断句不是很顺,读起来有些晦涩
2008-05-12 09:10 | xjb      

#23楼    回复  引用  查看    

无论别人说什么都不要轻易的改变自己的观念,编程是实践行业。
Linus炮轰C++是linus的事情,我依然认为C++水可爱的。刀这种东西用在会用的人手里才是好刀,给一个用枪的人用刀自然是不适用。

最适合自己的才是最好的,在没有更好的方法前能解决目前问题的就是最好的方法。
2008-05-12 10:22 | 黑羽飘舞      

#24楼    回复  引用  查看    

--引用--------------------------------------------------

--------------------------------------------------------
说的很实在,虽然我现在对这些思想理解的很肤浅,但我也觉得能用自己的方法去去解决问题的方法就是好方法。至于最好的方法需要通过实践来检验,而那也只能是后来的事。
2008-05-12 10:41 | Hard      

#25楼    回复  引用  查看    

@个人知识管理
读这么精?呵呵。考考你。什么叫SICP?从你的观点,阐述一下为什么LZ要在本文提到SICP?
2008-05-12 15:12 | 装配脑袋      

#26楼    回复  引用  查看    

 SICP没看过
功力不够,暂不发言。
支持怪怪兄台!
2008-05-12 21:47 | songcan      

#27楼    回复  引用  查看    

内功深厚!
2008-05-13 21:32 | lovecherry      

#28楼    回复  引用  查看    

看了怪怪这篇的以后,一直迷惘的我忽然觉得找到了前方的道路。于是当天就买了 SICP 这本书,虽然我知道这本书对我来说是有很大的难度的。希望能得到 怪怪 的帮助。
2008-05-19 10:32 | 三磊      

#29楼    回复  引用    

满激烈的讨论
2008-06-19 13:27 | 手机魔卡 [未注册用户]

标题  
姓名  
主页
Email (博主才能看到) 
验证码 *  看不清,换一张 [登录][注册]
内容(请不要发表任何与政治相关的内容)  
  登录  使用高级评论  新用户注册  返回页首  恢复上次提交      
该文被作者在 2008-05-11 17:17 编辑过
"五向定位"职业成长路线公开课(上海、南京、大连)
Google站内搜索


相关链接:
所属专题: 又是面向对象的讨论