[转帖]对计算机的一点看法
在这里我说说我对大学计算机各学科的看法吧。
大学开设的科目可以分为三类:基础课,专业基础课,技术课(就计算机来说)
1.基础课:英语,高数,线代,概率论,离散数学
英语至关重要,因为不论你是考研还是工作都十分需要。考验就不必说了,只要你从事编程工作不可能不去阅读英语文档,而且随着学习的深入你会发现外文在你所读的东西中所占比例越来越大,经典的书籍往往都是英文的,大陆少有非常值得一读的东西。
3门数学课,只要不考研,说实话用处不是太大。
离散数学,这是计算机科学的基础。无论干什么一定要学好,现在看来没什么用的只有代数结构(也是最难的一部分),数理逻辑学不好你基本上没法从事计算机工作,图论不行的话你数据结构也学不好,形式语言与自动机给了我们一个很好的模型,不知道的话你看相关的内容会有困难。
2.专业基础课:数据结构,组成原理,数据库,操作系统,计算机网络,编译原理.....
记住:这些课只是原理,了解一个大概就行了,以掌握思想为主,不要想着把它搞清楚,那毫无意义(我当年就犯了什么都想彻底搞清的错误,浪费了大量的时间),因为你学的都是过时的,谁也不会再用的东西。但这些思想都是至关重要的,不知道的话肯定影响你的发展。
唯一例外的一门课:数据结构,这门课怎么强调它的重要性都不过分,一定要搞的清清楚楚明明白白,开这门课的时候你把50%的时间放到它身上都可以。
3.技术课:C++,VB,JAVA,网页,Windows编程,Unix编程,数据库,autoCAD......
如果工作的话这就是大家学习的重点,以后混饭吃这些就是本钱。但要注意几点:
搞清楚我们是干什么的,别学错了方向。我们的重点是程序,不是网页设计(那是美工的活),不是office(那是文秘的活),不是autoCAD(那是电子,机械设计干的事),我们要做就去做动态网页(asp,jsp,php),去做二次开发(开发出新的平台给文秘、电子的人用)。
不要相信学校开的课程,这些课程都是最基础的,以数据库为例,学校一般教SQL,不教具体的(最多PB),我们要学的话起码要看看SQL Server,有可能的话接触一下Oracle。对于Java,语法只是小case,要争取学学javabean,jsp,servlet。尽可能拓宽自己的知识面,在感兴趣的方面加深。真正想成为一个合格的程序员我相信对分校的学生不是很容易的。
经常去技术论坛看看,了解一下大家都在所什么,市场需要什么样的人,比如说:现在Asp的人太多了,我们就不要学asp,看看jsp吧。我推荐一个网站:www.csdn.net