请问高手们对于设置模式应从什么情况去考虑
从学习中我对模式有一些初层次的体会。我个人觉得使用模式的思维习惯
只对对象化编程的一种拓展,使用的主要目的是各类的结构及关系的封装。每个模式就是各类不同的关第的解决方案,相当于语句中的if、for.
请高手们指教我的这种观念是否正确
模式是用来实现关系的松耦合,只有松耦合才能增强可维护性 可拓展性。软件不只是用来实现功能,更重要是如何高质量灵活地实现这些功能。
实现功能是高中生都能自学完成;高质量实现是专业训练才会有,这就是专业和业务的区别。
算法只是属于功能范畴。
软件在上个世纪80年代末就从面向功能时代过渡到面向对象的模式设计时代,而我们每个程序员自己呢?是否在使用现代载体,思想是封建落后的思想呢?
1. 不要用数据表来分析系统,而用模型对象来分析系统,进而使用模型对象,围绕数据表编程和面向过程是一对恶魔兄弟,一旦围绕数据表编程,必然带来面向过程的编程风格。所以,一定要斩断它们。
2. 花更多时间重构代码,引入模式,初期不要担心过分设计,只有范了过分设计毛病,才知道什么叫过分设计,别信奉那些经验丰富但是排斥OO,对OO新思想不以为然的观点,自己不经历风雨,怎么见彩虹呢!
面向过程、面向功能是软件刚刚起步的方式,经过20多年发展,软件不再是仅仅完成业务功能工具,而是自身成为一个独立进展体系。
只有相对的解决方案,没有绝对的解决方案。
所以,不接受模式思维的人从骨子里说都不是真正崇尚科学客观的人。科学客观首先就是承认世界是在变化的,那么作为世界的镜子软件有何种理由不作出多样性的考虑呢?
所以从文章、文化艺术角度来看,很容易区分它们不同。可惜国内理文分明,导致软件被纯理数学“强奸”啊。
据说:现在计算机软件写论文,如果希望发表,文章中必须有一些数据模型,显得自己的高深,其实这是最无力的表现,一个学科是否高深怎么能够借助其他学科来表现呢?很显然,现在国内计算机软件那些权威没有将软件本身作为文章看待,他们更看重的是文章所表现的主题思想,就象我们一直强调文化艺术更重要是教育功效,而不是文化艺术本身。
难道软件不可以和艺术一样,根本没有任何功效,就是探讨如何更好地展现自己?
软件在国内一天被“功用主义”遏制,OO思想一天就得不到舒展,GoF设计模式容易懂,如何使用?如何培养自己真正具备OO素质,我看几乎所有学习软件的人都要重新培训!因为路的方向就走错了。
浮躁是这个社会的现实,你不浮躁反而会被淘汰.呵呵,再过前几年能跟计算机打上交道可都是人杰哦,工资高,混的人也会多点,不然高科技公司那会有那么多波折啊,技术必竞只是商业中的一部分.在大家都只会过程思维的时候,一个人用OO思想,反而会让别人看不懂.
我不是高手,也不是职业程序员,更不是科班学习软件设计出身,只是混过三年的大专.现在觉得自己喜欢的不能放弃,所以又重新花时间来研究学习.
对banq用这个来比喻来比喻软件设计,觉得不是很适合,向面对象化之美就在于更能描写出社中的概念(对象)的逻辑性,直观性,框架性等等,跟面向功能不在一个层次上,跟面向功能支解了概念.而banq的比喻将两都放到了同一层次上.如果说面向功能是一篇文章;那面向对象就是写这编文章的思路,公式.让作者能跟椐自己的需要写出自己的文章,任意发挥.面向对象是面向功能的封装.我觉得对象像是一个词语,而功能就是这个词语的多重含义,在写文章的时候一个是写词语(面向对象),一个是直接写出含义(面向功能).呵呵!不知可行不.