【解惑】理论学习和学历的价值

来源:互联网 发布:凸优化方案设计 编辑:程序博客网 时间:2024/05/01 00:58
 2010-02-04 11:58

有自学C#的同学问我“自学计算机的时候,是应该先学习ADO.Net数据库开发、WinForm、ASP.net开发之类应用层面的东西还是应该先学习数据结构、算法呢?”。
我的建议是先把应用层面的东西搞熟了再去学数据结构、算法比较好,比如你一直在用LinkList类做数据的动态存储,等到你学数据结构的时候那么你就会对链表的作用明白了,然后就可以直接学链表的内部原理了,有了感性的认识再去学原理,就比那些上来就学链表原理,连链表在实际中的应用都不知道的话肯定学的稀里糊涂;再比如你把数据库用的比较熟了,你就会问“这么多数据,为什么数据库能这么快速的定位数据”,然后等学到散列算法、B+树、索引这些知识点的时候因为之前带着疑问学习,再去学的时候就会豁然开朗了,这样学习的效果也最好。

有一位大三的同学(非计算机专业)执意要休学参加我4月份办的“.Net精品就业班”,还想“如果我这三个月学得好的情况下,就不去上学了直接去就业”,被我劝阻了,我跟他说“坚决不可以!不是说知识上不可以,而是我说不可以!学历不是万能的,但是没有学历是万万不能的。你现在上大学感觉大学学历没什么,但是工作以后你就发现虽然你有学历没感觉怎么样,但是没有学历的话处处受歧视。别人都有鼻子,你也有,没啥新鲜的,但是如果你没有鼻子,那大家都会歧视你”。不过他最后还是把家长、学校搞定了,要求利用暑假的时间参加我7月份的第二个班,我同意了。但是我给他的建议是“那三个月你先学实际开发技术,然后一定要再回去自学计算机网络、操作系统、数据结构等这些计算机专业课,不必精通、但是一定要懂”。

我挺希望大学的教育变成先学实践再学理论的,这样先通过实践来对网络、数据库、操作系统之类的有一个使用上、感性的认识,然后再学理论。当然先实践再理论也有风险,那就是容易造成惰性心理,也就是学了实践以后以为自己无所不能了,就不再去学理论,比如学了数据库开发以后自己也能开发不错的程序了,就想“数据库不过如此,不就是增删改查嘛,不用学理论的”。但是一旦以后碰到海量数据处理、数据库调优等场景的时候就需要有比较深厚的数据结构、数据库原理、操作系统原理方面的基本功,没有这些理论作指导的话就会遇到发展上的瓶颈。先应用、再理论、再应用,应用验证理论、理论指导应用,螺旋式发展。

作者:杨中科

原创粉丝点击