Richie

Sometimes at night when I look up at the stars, and see the whole sky just laid out there, don't you think I ain't remembering it all. I still got dreams like anybody else, and ever so often, I am thinking about how things might of been. And then, all of a sudden, I'm forty, fifty, sixty years old, you know?

对最近讨论的看法

最近的讨论比较激烈,我看来其实主要思想偏向有两种,一种是学院式的研究探讨,另一种声音是希望讨论能更偏重于如何进行实际运用。
我的观点是支持后面一种。

例如book.Save()到底是否面向对象,用法是否优雅;例如面向对象是否一定要使用泛型,什么才叫面向对象。基于这个话题至少已经不下十几篇帖子,上千的回复争论。我觉得无论大家得出个什么结论对我而言没有任何价值,因为它对我这么多年来产品开发、项目实施、团队开发模式面临的困扰没有任何实际意义。是没有银弹,但总得找到有点力量的东西来解决问题。
就如同生活,一定是有了面包,再谈精神建设。对于软件思想、开发模式,大家先探讨好如何运用、实践,解决现实中的难题,再来讨论这种思想的好处、本质、某些场景如何有特色的运用、改进,这样才符合发展规律。无法针对实际问题说话,最终就是柏拉图式的空想。现在软件业的进步速度已经飞快,也许会成为软件技术历史中的一个跃进时期,副作用是心态浮躁,大家是愿意成为这一波发展里面的受益者还是他人的垫脚石?
所以我的观点是多脚踏实地,针对现实开发过程中的疑难困惑来谈这些思想怎样运用。
也许某一个时候实践的结果是面向对象+过程式的开发能很好的达到目的,过了一段时间你会觉得那些过程式的代码是错误的;也许某时你觉得自己很好的使用面向对象开发了一个项目,经历一阵之后发现那个设计是愚昧的,不正确的面向对象理解造成软件越来越难维护,这时你才发现你对面向对象理解深入了一些,或者在那样的开发环境下根本不应该使用面向对象思想。基于这样一些经历,针对大家的很多实际运用状况去谈论是否该面向对象,某些场景下如何运用继承多态,这种情况下,不管声明自己的观点还是反对意见,都是有支撑的,对自己和对他人都是最有意义的,这就是探讨。
没有任何支撑肯定是陷入空谈,咬文嚼字的口水战,因为以后很可能自己都会否定这些想法,这样的观点、想法拿什么说服人家,跟人家形成探讨?

一种技术思想,先是入门,了解该怎么用;然后是实践、思考,掌握怎么用;接下来是反思,什么状况环境下可用,如何灵活运用;最后是融合,你可以在前面的过程中迭代,更进一步掌握它的本质,思考它的改进,将其它思想与它融合起来思考,运用。目前博客园的这种讨论,我是看不清应该对应到那种层次。

设计的范畴不止技术框架的设计,也包括业务设计等其它各方面,否则软件产品是什么。不针对实际运用场景空谈技术思想,很容易造成技术人员成为一个理想的技术主义者。这里一些典型的表现是什么呢,技术人员严重的抵触需求、需求变更;管理人员一味的认为技术是解决一切的本源,现在产品不好只是因为技术运用不好,没做灵活,一想到要改进产品,就想到这个框架是不是得改一改,是不是得使用另外一种技术实现。
从开发模式的发展也可以看到,瀑布模型到迭代模型,现在的敏捷呢,配对之间从需求开始一路包办,小范围内不断迭代,技术人员别再期望不管需求了。
领域驱动思想呢,不也是从需求到开发一线串起来吗。领域驱动那本书,前面几章就已经把领域驱动思想讲明白了,后面为什么还要那么多章节的啰嗦,就是为了指导团队运用过程中各种各样可能遇到的困惑之处。
看Martin Folwer,设计模式到解析Eclipse、企业应用架构、分析模式等,层次也是感觉越来越具体化。

整个大环境趋向于针对于具体实际问题,把各种上下文紧密结合起来运用,而这里却感觉要将剥离上下文的空洞讨论进行到底。

最近又谈起了Java开源社区。
Java资历老,项目多,巨型的微型的,成功地失败的,各行各业各方各面,有这么多基础,社区里面充斥各种思想和讨论很正常;讨论交流的主题有侧重于实际运用的,有谈思想的,这也很正常。大量实践的结果必然是思想的碰撞和演化。
对于Java社区大量的开源项目,我的观点是,那些基本都是汇集众家之长、无数项目经验的结果,所以请大家用尊重、认真的态度去对待,哪怕它不是适合于.Net的最好解决方案,因为越用认真地态度去对待,你理解、学到的也越多。马克思著写自己的理论,还认真的研究、对待古希腊哲学、德国古典哲学,虽然这些并不一定是真理,但马克思得到了自己的理论。
.Net年轻,把开源项目搬过来,这是站在巨人肩膀上让自己发展更快,恐怕有人根本没有理解消化那些开源里面的思想、经验,就对它说不。谁要是把它们全都研究透了,然后大谈特谈它们的优点缺点,.Net里面应该用什么方案,这样的文章我会很乐意、很仔细的看。

.Net缺的就是Java那样大量的项目应用,所以微软ERP一买就是4套,早时财务也想买但没买成,MBS大力进军企业应用市场。微软的产品里也有不少东西借鉴开源社区中的做法,自己申请开源协议也是希望跟开源社区走的更近,采用合作而不是对立的方式。这是很好的做法,非常有利于.Net平台相关东西的实用性、完善发展。
当然,现在.Net社区里面很多思想也在影响Java社区的思考和发展方向;以后肯定会有.Net开源、.Net解决方案往Java实现上搬,但现在还不成熟。只因为学了用了.Net几年就一味的认为.Net已经足够强大,这是不切实际的想法。.Net很多技术、思想需要大量的项目运用,才能证明它的好与坏优与劣。

最后说一句,根基不牢,上层越庞大就越危险。当然,我认为的根基是大量的实践探索,而上层是各种思想的理解、探讨、挖掘。当然,如果大家在这两方面都掌握了,再来讨论哪个是根基的问题,这就确实是鸡生蛋还是蛋生鸡的问题。
从另外一个视角来看,摔过跟头获得的经验是更深刻的,所以莫大的错误也许正意味着莫大进步的开始。错的也好对的也好,实践过才知道,不实践永远不知道。只怕大家这样谈过之后发现根本用不起来这些东西,或者根本不去用。所以讨论空洞也好,实际也好,能够激起一大批人去实践,那效果也是很大的。即使造就很多眼高手低的人,毕竟一将功成万骨枯,我没必要否定。孰是孰非,you are the boss,你说了算。

posted on 2007-09-26 23:50 RicCC 阅读(2206) 评论(42)  编辑 收藏 所属分类: Others

Feedback

#1楼  2007-09-27 01:35 Anders Cui      

说得对

不希望陷入无休的争论
应该“脚踏实地,针对现实开发过程中的疑难困惑来谈这些思想怎样运用”   回复  引用  查看    

#2楼  2007-09-27 04:49 怪怪      

这几天来, 看过的最有意义的一个帖子, 是思归对某人误解小生的回帖的回复, 虽然短短几行, 一下就把事情的前因后果给交代清楚了. 到底谁懂谁不懂OO设计, 领域建模, 高下立判, 随后某人在另一个帖子里跟小生讨论相同问题的帖子中也软了.

可是你看看有没有其它人能在思归这个高度上谈这些事? 思归那个回复如此一矢中的, 强到都没人去理(我觉得这个事实很值得玩味), 只有小生自己在后面的讨论中拿起该观点当作了武器. 不知道是碍于思归的声望一下子把参与者吓住了呢? 还是真看不到思归这几句话对他们的认识可能会起到的良好修正作用.

眼高手低并不可怕, 意识带动具体操作(不过这也必须通过实践演练), 这在我过去接触电子竞技圈子的时候, 也屡见不鲜. 可怕的是无论出于什么样的动机, 不愿意听见不同的意见(不是去芜存菁而是先找立场). 觉得自己够牛吗? 哪个牛人不是在摸爬滚打中前进的呢?

我投降了. 就我这几天在博客园上的实践, 就不要过于强调每个人自己理解的OO, 而是找找各种出路这一目的: 对着干不管用, 顺着说不管用, 提点新路子不管用, 有时反而让争吵更激烈. 谁叫我水平不足不够正规, 帖子再长都说不清楚事呢? 以后决心少发帖, 不进行争论. 该去Java社区去Java社区, 该去.NET社区去.NET社区找, 老老实实做个精明的消费者算了.

另外, 如果我的帖子脏了谁的法眼, 我承认个错误, 没把握好自己就胡说八道, 对不起了!   回复  引用  查看    

#3楼  2007-09-27 06:54 菌哥      

说得好,
"实践是检验真理的唯一标准"
软件也是如此,OO也是如此   回复  引用  查看    

#4楼  2007-09-27 07:49 小生      

@怪怪
我還不知道那位評論者就是思歸~

不過我以為他第一個問題應該顯而易見﹐我提出問題的背景就是一個簡單的給圖書館管理人員的借書還書記錄系統而已﹐沒有什么虛擬現實這么復雜﹐這也是我們經常碰到的信息系統的一個簡單代表。

對于以數據庫為中心﹐我一直強調自己沒有反對﹐相反我自己也經常在設計系統時data flow,實體聯系一路走來﹐有關系理論支持心里有點底﹕)
我提供的領域模型也只是給大家提供信息系統開發的另一種方法或是想法   回复  引用  查看    

#5楼  2007-09-27 07:51 小生      

并沒有去一爭高下的意思   回复  引用  查看    

#6楼  2007-09-27 08:00 1-2-3      

>根基是大量的实践探索,而上层是各种思想的理解、探讨、挖掘
精辟。楼主是高人。   回复  引用  查看    

#7楼  2007-09-27 08:10 怪怪      

@小生
我知道你没有..., 但是别人有没有我说不准就只能怀着恶意揣测了....

我这人对高人特敏感, 思归的id一下子就能反应过来.., 虽然从她的博客里一句有用的话也看不见; 至于为什么对她印象深刻估计是她在哪儿的某个回帖让我一下子记住了, 就如我说过的msolap2一样. 所以我一直认为.NET社区多弱这个认识是不对的.

只是Java社区爱讨论, 比如Javaeye上那几个. 他们讨论起来不也是寥寥几个到十几个爱好者说话, 别人谁插嘴.. 只不过.NET社区猫着的更多, 压根就不多谈.

另外, 刚才特意去注意了一眼Javaeye, 前几页都是某框架怎么用这样的帖子, 和cnblogs甚至csdn并无什么不同. 但是确实以前OO讨论的帖子相当多, 现在能找到经常看见, 一多半2~3年前就发起了.

我觉得可能那会儿流行这个, 现在就如LZ所说....大家都更务实了, 真正明白点的也不说话了. 其实我觉得认知上升到一定程度, 必然更多的是孤独的探索, 然后偶尔表达, 看别的有价值的人的偶尔表达, 这也都是对同一层面的声音多些留意, 好避免自己一个人眼光过窄.

到了这个程度, 自然也就没有到社区里搞那么热闹的动力了.   回复  引用  查看    

#8楼  2007-09-27 08:21 bluebird      

我觉得 java社区讨论 OO的比较多是因为 java从开始到现在,不管语言还是架构都是带着 OO的,就和c++一样的,本身都是用 OO的,目前我们这个讨论区以net的博客文章为最多,.net太杂了,所以这一块 OO讨论很少。   回复  引用  查看    

#9楼  2007-09-27 08:29 杨其仲      

支持楼主一下, 写了这么一大篇文章啊,不容易,再分析,再结合自己的想法,在打字写出来,的用多长时间呀,佩服,佩服.   回复  引用  查看    

#10楼  2007-09-27 08:38 bluebird      

这个字体 不怎么样呀,有点模糊,看着挺累   回复  引用  查看    

#11楼  2007-09-27 08:46 jecray      

是啊 字体很晕啊   回复  引用  查看    

#12楼  2007-09-27 09:08 杨正祎      

文章很好,字体修正必要。   回复  引用  查看    

#13楼  2007-09-27 09:11 ╃小〥斌╄      

楼上对日外包开发多了。。 还修正必要。

文章不错, 从LZ这学到不少数据库知识。 THKS。   回复  引用  查看    

#14楼  2007-09-27 09:15 周银辉      

不错   回复  引用  查看    

#15楼  2007-09-27 09:15 小宇哥哥      


眼皮一眨,眼前豁然开朗,各位摇身一变成大师了.

开始谁都迷糊,现在,皇帝的新装?都看见了?

讨论这东西,效果好,谁用谁知道.你不讨论并不代表讨论就出不了成果.

一个地方有一个地方的特色,今天不让讨论这个,明天不让讨论那个,那干脆再加一个GFW得了,大家都安息吧.   回复  引用  查看    

#16楼  2007-09-27 09:17 小宇哥哥      

@bluebird
这位兄台,难道你认为.net不是oo的吗?我觉得blog园的面向对象讨论对你尤其有用,真的,加入进来吧!   回复  引用  查看    

#17楼  2007-09-27 09:33 daizhj      

有同感。   回复  引用  查看    

#18楼  2007-09-27 10:08 张子阳.      

@杨正祎
哈哈哈,你笑死我了,还“修正必要”,定语后置呀,NB!

对于楼主的文章,我相当赞同,踏踏实实地做点事,或者将一个项目中OO的具体应用拿出来跟大家讨论,这样不是更好么?
  回复  引用  查看    

#19楼  2007-09-27 10:27 徐少侠      

对博主的一些不同意见

我们在讨论OO问题的时候不能太面向实际!!

原因如下:
1\OO本身不是为了实施简单的需求而出现的.
2\我们多数人平时每天面对的局部问题都是很小的
3\即使到了整体项目这个级别,我们多数人面对的软件项目根本也是很小的.
4\我们不可能拿太大的系统来讨论的,所以引发讨论的都是小需求,小问题,多数几天就能实现的.因此如何实现需求不是我们要讨论的。

所以,如果大家坚持要从身边的问题出发,从解决实际问题出发
那也可以啊
我们根本就不要OO了
因为微软的VS系列为广大程序员准备了太强大的以数据为中心的快速工具

.net社区为什么在OO上弱?
因为在微软的工具支持下,我们不OO都已经能完成大量的工作了.
但是已经有人感觉会经常修改代码
已经有人感觉经常牵一发而动全身

但是,就是只沉醉于让每个位置的更改更快点
而不是多想想如果有办法避免修改,精确点说是减少修改的位置总数.
这就是OO的源动力!

大家要牢记以下基本原则来讨论OO才有意义
1\讨论OO,就是讨论如果面对变化.如果没有变化,这个世界不需要OO.
2\讨论OO,就是讨论OO的概念和思想以及实现,不是讨论我们正在讨论的这个需求如何更快更方便的实现.最快的实现就是用向导了.那还需要讨论吗?

最后的总结:

变化!
如何适应变化才是OO需要讨论的东西
我们要讨论的是如何应用OO技术在项目中化解变化带来的修改,将修改降低到最低.

至于如何写代码看起来更OO一点?
根本就是本末倒置

因为,并不是为了看起来OO而去OO的
用了OO思想就一定要因此解决点问题

否则,你倒是好心用了OO
不过大家都知道,写OO的代码比不OO的累
浪费了项目组的时间,就是浪费了金钱.
不会是值得推荐的做法

做实际项目,需求是第一推动力.有必要用OO的时候才用
没必要的时候用,就是用错了
开始的需求里看不出用OO的必要性,那就千万不要用
后来需求变化了,发觉要使用了,那就一定要用

而讨论问题的时候,尤其是来学习和讨论OO的时候
我们应该假设自己面对的是必然会变化的需求
从而学会并理解各种OO模式能解决的问题
然后,当我们以后在项目中嗅到相关的问题时
相信大家会很自觉得使用OO的

因为,在以前的讨论中,大家已经充分体验过用或不用的区别   回复  引用  查看    

#20楼  2007-09-27 10:56 A.Z      

管理人员一味的认为技术是解决一切的本源,现在产品不好只是因为技术运用不好,没做灵活,一想到要改进产品,就想到这个框架是不是得改一改,是不是得使用另外一种技术实现。
-----------------------------------------------------------------

管理人员意识到技术是本源的并不多,所以造成现在软件社会浮躁的心理。
时代进步了,软件开发也变成了工厂式的开发,技术成本就像是工人操作的机器,现在中国的手工作坊依靠一些粗糙的没有精度的机器依旧可以打开国外的大门,这也许让很多人震惊了。我们都知道这里的本源是什么,我们羞于耻口。这样的作坊在一定时期下是有旺盛生命力的,以后的前途不容乐观,吃人血肉的boss可以啪啪屁股走人,被啃的支离破碎的人们就没有这么潇洒了。
回到软件设计,框架除了提供软件的基础实现和充当各个组件的协调功能外并没有完全的职责在改进产品的某一个功能上,产品的技术如果完全的是框架承担,我觉得这种软件就算做出来也是畸形的。在软件开发管理中应当遵守木桶原理。


  回复  引用  查看    

#21楼  2007-09-27 11:34 bluebird      

--引用--------------------------------------------------
小宇哥哥: @bluebird
这位兄台,难道你认为.net不是oo的吗?我觉得blog园的面向对象讨论对你尤其有用,真的,加入进来吧!
--------------------------------------------------------
讨论不错,应该更多,你没有理解我的意思。现在说的。net主要是指 asp.net;C#,vb.net这些,这些需求对 OO的需求不是非常的强烈,它本身就是个快速开发平台,比起c++了当然 OO 弱了一些。不过提倡用 OO的思想去设计,用各种技术手段快速去实现。   回复  引用  查看    

#22楼 [楼主] 2007-09-27 12:03 RicCC      

--引用--------------------------------------------------
怪怪:
我投降了. 就我这几天在博客园上的实践, 就不要过于强调每个人自己理解的OO, 而是找找各种出路这一目的: 对着干不管用, 顺着说不管用, 提点新路子不管用, 有时反而让争吵更激烈. 谁叫我水平不足不够正规, 帖子再长都说不清楚事呢? 以后决心少发帖, 不进行争论. 该去Java社区去Java社区, 该去.NET社区去.NET社区找, 老老实实做个精明的消费者算了.

另外, 如果我的帖子脏了谁的法眼, 我承认个错误, 没把握好自己就胡说八道, 对不起了!
--------------------------------------------------------

讨论是个好事情,我也并不是要停止大家的讨论,你的帖子不错
看看思归的回复,主要也是出现在有实际例子的一些帖子中,如果大家纯粹的只是揪住某个概念争吵个n回合,别人真的是不好也不大愿意加入其中
例如deerchao的那篇,我看一下帖子的几句话都是很认同的,就是语气太硬了点,不是在大量项目里面滚过的人很难有那些认识。可是整个后面的讨论只是围绕个别点,或是抓住那种坚硬的语气,架一样的盖了100多楼,我想这也不是deerchao发帖的初衷吧,那已经不是探讨的范围了。假如我想跟人家探讨,绝对不会是那些话题。   回复  引用  查看    

#23楼 [楼主] 2007-09-27 12:06 RicCC      

@bluebird
@jecray
@杨正祎
微软雅黑,可能字体设小了点   回复  引用  查看    

#24楼 [楼主] 2007-09-27 12:08 RicCC      

@小宇哥哥
参考一下给怪怪的回复   回复  引用  查看    

#25楼  2007-09-27 12:08 双鱼座      

此文才是真正的空谈。   回复  引用  查看    

#26楼  2007-09-27 12:52 jisen      

路过,看看!没有发言权..........   回复  引用  查看    

#27楼 [楼主] 2007-09-27 12:59 RicCC      

@徐少侠
谢谢你的回复,写了这么一大段的。不过讲的东西太抽象化了点,我有点晕,尤其是隔几个字就两个圈圈。
我的两点意见:
1. "我们在讨论OO问题的时候不能太面向实际!!"
似乎你已经把面向对象升华成一种类似哲学的高度了,但我觉得没有这样复杂和抽象。
在你提到的四点原因中,我说两句
设计上,复杂的问题都需要经过分析将其简化,在简化的基础上再运用技术设计方法。大道至简这本书我没看过,但这四个字是设计的宗旨。
设计模式、领域驱动等等这些书,思想是深刻的,例子是有针对性的,他们都不是把大系统搬过来讲。

2. 你总结中对变化的讨论
我基本认同。但一个观点是,抛开实际问题谈变化是很有破坏力的隐患,系统应该假设的变化有多少没有标准。对于这个问题,极端情况下会有两种方式的解法
a. 头脑风暴,天马行空一样的大量运用设计模式、继承多态等等手段,论证结果是各种假设都可以实现,系统可以做的相当灵活。--期待使用技术解决不确定的业务
b. 极度关注对领域业务的研究、积累,只在领域业务分析中去调查论证必要的假设,但系统采用更简洁、务实的技术设计方案。--重视领域业务,而简化技术设计

希望能给你带来点思考   回复  引用  查看    

#28楼 [楼主] 2007-09-27 13:06 RicCC      

@A.Z
理解。从技术人员走出来的管理者和职业经理人的观点、态度基本是不一样的,各有优势和瓶颈盲点。   回复  引用  查看    

#29楼  2007-09-27 13:38 小宇哥哥      

@bluebird
讨论不错,应该更多,你没有理解我的意思。现在说的。net主要是指 asp.net;C#,vb.net这些,这些需求对 OO的需求不是非常的强烈,它本身就是个快速开发平台,比起c++了当然 OO 弱了一些。不过提倡用 OO的思想去设计,用各种技术手段快速去实现。
-----------------------------------------------------------------

如果你觉得这些对OO反应的不够明晰,那我觉得你可能是做界面多了一些,如果写后台代码的话,我感觉对OO体现的还是很强的,比如一些策略模式,我们会经常用到吧?我觉得也不是主要是asp.net,只是因为web开发火起来了,看的到的是asp.net,像webservice,silverlight,wpf才刚刚开始呀.

相反,我倒觉得c++不够OO,掺和了太多的面向过程,太拖泥带水了.   回复  引用  查看    

#30楼  2007-09-27 14:06 徐少侠      

@RicCC
我提出的不要过多考虑实际主要是很多人连怎么来讨论都不清楚

举例来说
很有代表性的最近关于Book.Save的讨论
本质上,大家的代码都能完成功能
那么我们讨论的目标应该是两者各有什么优势,更合适在什么业务场景下来使用
而不是为了最终大家一定要统一到某种模式上去.
最理想的结果是大家同时领会了两种解决方案的优点和缺点,懂得了灵活应用

但是在讨论过程中,很多Manager.Save的支持者不是去学习Book.Save所能体现出来的优势,甚至可能他们根本不打算去理解其他解决方案的优势,而是拼命寻找别人方案中比自己现有方案的不足?这算哪门子讨论?因为本来就没有一个完美的方案的.

如果仅仅为了将一个数据存到数据库,那干吗还要什么manager呢?
一个conn.execute就解决了
如果我这么去恶心那些人,我不知道他们什么想法.
我如今就有这种感觉了.

关于变化,我只有一个感觉,如果不是因为要考虑业务需求的变化,就根本不必来学习OO
因此,任何要讨论为什么XX地方要面向对象的帖子
我只提一个建议,说一个原则

我们在项目中之所以去运用各种面向对象的技术解决方案.
仅仅是因为考虑到目前的需求变更,以及今后类似的需求变更

如果目前的需求,仅仅用非面向对象就能很好解决,那么就千万不要去面向对象
如果需求发生变更的时候,预计未来可能有类似的变更,那么就一定要以面向对象的模式去进行代码变更.



  回复  引用  查看    

#31楼  2007-09-27 14:06 bluebird      

@小宇哥哥
申明一下 我不是做前台的,我一直在后台默默奉献,哈哈。c++绝对不是你说的拖泥带水,我们就事论事,别对人呀,老弟。   回复  引用  查看    

#32楼  2007-09-27 15:33 小宇哥哥      

@bluebird
没对人,没对人,呵呵   回复  引用  查看    

#33楼 [楼主] 2007-09-27 17:58 RicCC      

@徐少侠
关于Poor Model和ActiveRecord之争,我没有发言权,Poor Model做了4年项目,但ActiveRecord没用过。如果你有这方面的经验非常愿意听听你的分享。

还是关于变化的看法,觉得你把面向对象理解的太狭隘了,重用、维护性等也是直接的好处,OOA、OOD已经是方法论的范畴。

"最理想的结果是大家同时领会了两种解决方案的优点和缺点,懂得了灵活应用",这是讨论的目的,每个人都希望看到的。
但很多时候我们都在坚定的坚持自己的想法,甚至是偏执,极力的维护辩解,越来越激动然后就有意无意的伤害到对方,整个气氛别人看起来明显不对劲。都反省一下可能自己就有这个毛病的,大家都用实际场景、经验说话,应该能好很多。

这段时间你对面向对象的研究真是突飞猛进,恭喜了。   回复  引用  查看    

#34楼  2007-09-27 18:08 徐少侠      

@RicCC
OO刚入门而已
并且的确没有太多机会在实际的项目中使用
因为,平时的项目都是只管捞钱,卖个1.0版。永不维护的那种。
所以有时候干着急

至于你说的重用,维护等我也都晓得
因为其实这个和拥抱变化是一脉相承的。
就如同封装、继承、多态其实实现起来是一气呵成的。缺一不可的一样。

最近这么热心,也是因为本身不是天天必须面对代码的,因此比直接编码的程序员稍微多点时间来考虑其他的东西。
因此很想分享到.net社区

因为我一直有这么个可怕的念头:
若干年后,会不会我们中国的程序员只能在世界的软件格局里占据最底层的位置
会不会哪天我们凑上去做外包人家都不一定敢要?

因为,说不定我们脱节太多了,着急ing.   回复  引用  查看    

#35楼  2007-09-28 00:20 Cat Chen      

其实各派有各派的看法,这很正常吧,只要文章的态度是论述自己认为正确的观点,而非打压别人的观点,那就行了,大家也乐意去看,没必要一定分出谁对谁错啊。   回复  引用  查看    

#36楼  2007-09-28 00:44 cnlamar      

其实大家伙何必眼里容不得沙子,心胸宽广一些,退一步看问题,才好。

OO或者不OO,都是为我所用,怎么用,才会更好,更有效,对短期对长远,如何分清,没有最好的,只有最合适的,盲目的去OO固然不好,盲目的抵触OO自然也不见得是好事,更别搞什么派系了。

上面几句可不是说楼主,别误会,楼主的名字很熟,象是我很久前的一位朋友。   回复  引用  查看    

#37楼 [楼主] 2007-09-28 12:53 RicCC      

@徐少侠
多用多思考,一通百通,加上一个能容忍甚至最终认可对立意见的心态就更好,这是我的经验   回复  引用  查看    

#38楼 [楼主] 2007-09-28 12:55 RicCC      

@Cat Chen
看到有人发文都越来越小心生怕遭受打压,有人似乎要退隐江湖,所以谈谈自己的看法   回复  引用  查看    

#39楼 [楼主] 2007-09-28 13:04 RicCC      

@cnlamar
态度决定高度,宽广的心态很重要。
实际开发环境太复杂,没有银弹,所以要博览众家之长   回复  引用  查看    

#40楼  2007-09-29 09:16 笨小苏      

看着少侠想起一个词,拧!!!!!!!   回复  引用  查看    

#41楼  2007-09-29 14:02 flyingchen      

老哥实在厉害!   回复  引用  查看    

#42楼  2007-09-29 23:17 Anytao      

@Cat Chen
@RicCC
@怪怪

技术论坛本来就是直抒胸臆的地方,没有什么对错之分,尽情舒畅才是程序人的本性所在。对了,值得肯定,错了,更值得讨论。
针对同样的问题,发表不同的意见,各取所需,对号入座。听不进他人意见的人,只会沉迷在打压他人的爽快意淫罢了。对于需要百花齐放的竞技舞台上,我们也同样需要个性,捧场也好,打压也罢,别当回事。还是同意怪怪的那些话,把真正的精力放在对这些讨论的思考上,才是最有意义的事情。
:-)   回复  引用  查看