冠军

导航

不畏浮云遮望眼,只缘身在最高峰

 

我同事的家中有一个小朋友,正在上幼儿园,老师教他算术,一个苹果加上两个苹果得到了三个苹果。回到家中,妈妈见到桌上有梨子,就拿起一个梨子,然后再拿起两个梨子,问小朋友总共是几个梨子,小朋友答不上来,家长大怒。

这个故事是同事在出租车上讲给我的,出租车司机插了一句话,使我们豁然开朗,“你先给孩子讲苹果,然后拿梨子,孩子怎么反应得过来?”小朋友形象思维还没有建立起来,我们就希望他有抽象思维的能力,确实是难为他了。

形象思维比较容易,抽象思维比较难。所以幼儿园的老师使用具体的苹果来进行教学。然而,只有形象思维难以解决生活中千变万化的问题,所以,我们还是要借助于抽象思维来认识问题的本质,通过建立一整套的理论体系,然后通过逻辑论证,一步接一步,最后就可能得到某个结论。学习算数虽然比较难,但是,它不仅能够帮助我们解决苹果的问题,梨子的问题,还可以解决形形色色的计数问题。这才是我们学习的关键。


因此,在通过苹果学习算术的时候,我们要有意识地进行抽象,以学习算术的本质,而不是将注意力放到漂亮的苹果上,如果我们被苹果的色、香、味所吸引,而忽视了需要掌握的本质问题,那无异于缘木求鱼,越来越远离我们的目标。条条大路通罗马,但是有的大道是需要绕远的,虽然走的人很多,但是可能要兜一个大圈子,以至于你还没有走到就开始抱怨怎么这个远,中途就放弃了。有的道路虽然要爬山涉水,但是却是风光无限,直指罗马,看起来很难走,但是坚持下来却可以更快地穿越浮云,一览众山小。

.NET 的学习同样如此,许多人一方面说 .NET 没有什么好的,拖拖拽拽就可以完成开发,又有许多人说,.NET 技术变化太快,需要学习的内容太多,新技术已经乱花渐欲迷人眼,吾身也有涯,而知也无涯,以有涯随无涯,怠矣!是这样吗?显然不是!

软件开发技术是一个不断发展的过程,目前来说,不同的技术处在不同的发展阶段上,.NET 已经进入了组件化开发阶段,有的技术还处于进入组件化开发阶段的过程中。对于 .NET 开发来说,通过组件技术将复杂的常用的处理封装起来,通过高内聚,低耦合的设计思想,提供给使用组件的程序员一个简单的使用接口,结合强大的开发工具的帮助,使得 .NET 开发达到了一个空前的高度。

但是,这使得 .NET 的开发以组件为界呈现出两个不同的开发群体,开发组件的程序员和使用组件的程序员,开发组件需要扎实的软件开发理论,丰富的开发经验。而使用组件的程序员则仅仅需要通过设置一些组件的属性,调用一些组件的方法,就可以使用组件完成从前需要许多高手才能完成的开发任务。

我们不能否认使用组件的程序员的工作,但是,组件可以解决通用的问题,却不能帮助我们解决所有的问题,所以,即使是使用组件的程序员也必须要学习组件工作的内在机制,才能更好地使用组件,不能掌握工具的人,是不可能用好工具的。因此,成为真正掌握 .NET 的程序员,就必须要掌握 .NET 的核心,向着开发组件的程序员前进。

成为一个组件开发人员显然比较难,这一步的门槛是很高的,以 Web 开发为例,必须掌握的基础知识就有 HTTP 协议,HTML 语法,JavaScript 语言,面向对象的解决问题的方法,流,序列化,状态管理的思想及实现等等,这些技术在使用 ASP.NET 控件进行开发的情况下,你都可以不用了解,还可以开发出一个像模像样的网站来,如果使用了一些漂亮的模板,有一个过得去的美工的话,用户可能还是比较满意的。但是,如果我们希望实现一些定制化的效果,而没有现成的控件,如果网站的访问量比较大,需要进行优化,那你就会束手无策了。

所以,还是让我们沉下心来,从问题的本质来学起,不要被 .NET 缤纷多彩的技术所迷惑,这些技术确实很好,但是,没有扎实的技术积累就是无本之木,当我们一步一步打好基础,在基础知识的学习中,再融汇这些应用技术,理论联系实际应用。你就会发现 .NET 不简单,新的技术也并不复杂,学习他们也并不再是一种负担,而是对你的一种帮助了。

 

希望此文能对大家有一些帮助。

转载请标明出处! 

 

 

posted on 2010-12-05 10:23  冠军  阅读(9907)  评论(29编辑  收藏  举报