代码改变世界

从 ASP 到 ASP.NET (Part 3 - 后记)

2006-11-24 00:09  Cat Chen  阅读(1993)  评论(3编辑  收藏  举报

首先要说明,题目原本是《从熟练的ASP程序员到熟练的ASP.NET程序员》,不过我觉得太长了所以删减了。这篇是后记,不再会提及任何技术细节,需要说的只是如何到达“熟练”甚至是“精通”的境界。

使用造就熟练

在ASP.NET 2.0发布一年后才来发表这个系列的文章,距离ASP.NET 1.0发布已经有4年了,可能很多人都会觉得太晚了。其实还不算太晚吧,因为我们真正在讨论的是“熟练”而不是“入门”。或许标题为《从ASP到ASP.NET》的文章和书籍在2002年就已经泛滥了,但在那个年代敢说自己到得了“熟练”水平的人可能非常少。很多人都在2002年开始入门,然而真正坚持了4年下来的人,或许才觉得自己有资格称之为“熟练的ASP.NET程序员”。

实际上有经验的程序员都知道,从学习一门新技术到熟练使用都是需要经过3~5年的,没有捷径可走,无论你是多么的高手,或者这门技术声称多么的简单而且容易上手,你都无法用几个月的时间到达熟练使用的水平。所以,如果想尽快成为一名熟练的ASP.NET程序员,就要多使用ASP.NET,并且避免以使用ASP的方式来使用ASP.NET,这样才能摸索出一套真正适用于自己的ASP.NET使用方法来。

需求推动技术

很多人通过看书跨入了ASP.NET的门槛,然而却不知道下一步该怎么做。各种“高级”技术让入门者眼花缭乱,如果拿一个PetShop或者CommunityServer来解剖的话会发现有太多的东西值得深入了解了,而这些都是无底洞,然而如果都是浅尝则止的话又好像学不到什么。

这时候你需要记住一个原则,是需求推动技术,而不是反过来。这个原则在商业上适用,在学业上也适用。我们来看一个很具体的例子,就是在中国读计算机系的大多数本科生是怎么应付学业内的各种需要编写程序的作业的。作为学生,学习过面向对象程序设计和软件工程这两门课程是一回事,然而怎么做作业却是另外一回事。在做作业时,因为复用的需求很低,所以对象级的复用是几乎不需要的,顶多就是用到函数级的复用,如果一个函数能够多次复用,他们已经欢呼函数级复用的伟大。至于面向对象程序设计和软件工程,那是用来考试的知识,考完也就忘了。

你当然不希望你在学习ASP.NET途中积累的知识好像上面说的那样很快就遗忘了,所以一定要基于需求而去学习,而不是别人说什么有用就把什么拿起来生吞活剥一番。所以,如果你入门之后不知道需要接着学什么,那么先别急着学,而是尝试用现有的知识去做点什么,凭你的个人爱好去发挥,直到你发现你现在的知识无法应付了,你也就知道下一步该学什么了。现实中的每一项技术,都是基于之前的技术无法满足某个需求而发明的,如果你想忽略这个历史过程而直接把历史上各阶段出现的技术都学懂,那么你将无法把知识记牢。只有当你重复这一历史过程的时候,你才能够真正的掌握到你所需要学习的知识,同时因为这些技术已经被发明了,你需要做的仅仅是拿资料来看,所以学习的效率其实并不低。

总结

正如每一个人类胚胎的发育都重新经历了人类进化的过程一样,成为熟练的ASP.NET程序员也必须重复部分前人所走过的路。为什么ASP不够好而需要发明ASP.NET,为什么要为ASP.NET发明那么多分枝技术,这些都是需要了解的,如果你有兴趣和我一起了解这些知识,欢迎订阅Cat in dotNET