OO和算法数据结构是两种不同的基本功,就象水工和电工都有各自的基础工,不是说你会电工了,就会去搞水管,(虽然水管和电线管相似)。
算法数据结构和对象是两种不同的路子,延伸开来,算法数据结构就会延伸到数据库编程思路;对象则自然延伸到java等DDD建模对象编程思路。
现在我们交流时存在大量语义差别,他在那里讲数据结构,你在这里讲对象,鸡同鸭讲,造成这个混乱局面的源头就在教育。
李开复说算法是力量,中国软件教育中都不缺算法教育,但是还是不行,什么原因?两个:一个是方向就错了;一个是力度还不够,怎么加力度呢?那么他的意思就是算法数据结构提前到高中学习,大学开始学习更深入图铃奖的理论了?哈哈,很奇怪的结论啊。
所以,我认为中国软件教育方向错了,从一开始就错了(应该大量培养软件工程师,而不是科学家),这些被错误教育误导的人走上企业工程领导岗位,他们学的是软件科学家那套,本来用算法数据结构来招聘科学家的,结果你去了,你是去应聘工程师的,两个不同专业啊。
你去了当然考你算法,因为他们可能只会算法啊,让他们来考对象基础知识,他们就会问出楼上OOJDON那样可笑的问题出来。哈哈,这么简单问题都不知道。
我们在Jdon.com都是讨论软件工程,怎么把软件做得更易于维护,更拓展,怎样更快跟随需求变化而变化;不是讨论如何科学发明一套惊天雷人的算法。
算法不会帮助我们将软件做得更易于维护,有时算法反而导致相反方向,一个复杂的算法简单的公式,除了算法发明者以外,其他人都无法快速理解读懂,更别说维护了,软件是要写得人人都能看懂,从这点来说:算法思维反而坏事了。比如使用存储过程 SQL表达业务都是这种算法思维发展出来的恶心肿瘤。