开学之际想发个文章吐槽一下中国的计算机教育

2012-08-22 11:46:38 +08:00
 ant_sz
本人大四,虽然不是计算机专业选手,但是所见所闻还是能凑出一点见解的,写这个文的目的是让即将或者很快就要进入大学阶段的v2exer提前提一个醒,那就是,在大学学习计算机,自学的能力是很重要的

吐槽开始
首先是c语言,据我所知,目前c语言教育的大纲和普遍使用的课本都几乎是十年前的版本了。虽然c语言在这十来年改变并不大,但是这些课本往往与实际脱节,教学时脱离编译器和运行环境孤立的讲课,比如对于数据类型所占的字节数,是跟编译器、系统环境等相关的,而大多数课本上都还停留在16位cpu时代的情况,大多数课本和老师授课时根本不会强调这点

再说上机,因为课本是老版本,所以上机的工具也是老工具,至少就我们学校而言,上机实践使用的是古老的vc6和更古老的turbo c,也许这两个产品的确非常经典,初学时拿来练手也就罢了,但是不应该在考试的时候将这两项作为考察的内容,有的甚至考察某个按钮的意义,如果你是一个vs2012或者gcc或者clang选手,那你就抓虾了

再说考试,一般来说考试分为上机和笔试两部分,上机咱就不说了,让你用古老的vc6或者turboc写个程序,笔试方面,没错,让你在纸上写程序,然后老师在纸上读你的程序,中间没有经过任何计算机编译和运行调试。你的成绩就出来了

最近还流行独立的软件学院,还有国际化教学试点,也就是英文授课,英文考试。实际情况是,的确给孩子们发了英文课本考试也是英文试卷,可是学校哪里找那么多高水平的英文授课教师啊?有的老师是对着英文ppt讲中文,有的正相反,而其中英文能说得很好的寥寥无几。

对于算法和数据结构,我深深的认为对于其中每一个,都要手动实现一边才能掌握,当然这个还是得靠你自己,老师在布置作业时一般不会强制你实践,原因是不容易判定你到底是否完成了,一般这类学科的作业是习题,只有一两次针对重要算法的大作业需要你自己实现。明白算法的执行过程和动手实现真心有差距。真正写过一便才能了解到细节!

另外,学校里教学涉及的内容很窄,必修的方面除c语言外一般最多是java和cpp,最近移动开发比较热门,故而有一些csharp或者android的选修课,此外,基本不会有热门技术或者技术热点的教学,新兴语言、web开发等方面教学都很少。

以上,结论,在大学甚至不是不是计算机专业都不重要,不要指望学校教育能让你养成良好的编程习惯或者老师们能解决你的困惑。自学才是正道
6623 次点击
所在节点    程序员
72 条回复
NemoAlex
2012-08-22 11:52:50 +08:00
国内大学的所有科目几乎都是这样的
fangzhzh
2012-08-22 11:52:53 +08:00
lz是否知道这个世界上有公开课这个东西,公开课还有作业,还有考试,还有考过了发一个MIT的证书.
Amztion
2012-08-22 11:52:53 +08:00
膜拜
tttwww18
2012-08-22 11:53:13 +08:00
学校很多时候教的都是入门的东西,很多课程在短短一个学期根本就不可能讲全面,只能给你讲讲基础,关键还是要靠自学。师傅领进门,修行在个人。
hyq
2012-08-22 11:54:45 +08:00
最鬱悶的是編譯原理只上了半本書,大學白上了
glasslion
2012-08-22 11:56:07 +08:00
我大学时考试要是纸上写程序,就谢天谢地了。我们院的老湿最喜欢出名词解释题,专业课要背的比政治课还多
hbc
2012-08-22 11:58:54 +08:00
@fangzhzh 人家只是想告诉像我这种大一新生大学计算机教育的状况啦……
wening
2012-08-22 12:05:42 +08:00
@glasslion 真是同感
楼主说的其实就是大部分高校的实际情况
不得不说,我们和国外的计算机水平是有差距了
楼主所说的,我个人认为是最重要的原因之一
sophy
2012-08-22 12:09:23 +08:00
西电老乡。。。嘿嘿嘿
nicolazj
2012-08-22 12:24:44 +08:00
楼主 讲的在理,当初大学 网络课什么上的真是吐血 全是脱离实际的
tangyuan
2012-08-22 12:25:36 +08:00
难道现在还是这样吗?我知道我上大学56年前是这样的,这几年还没有改善?听说也有学校在教python和php
liliang13
2012-08-22 12:27:16 +08:00
@wening 而且我觉得差距不是一点半点。。。看国外的公开课神马的,才觉得这才是大学。。
jiangle
2012-08-22 12:27:42 +08:00
自学能力确实很 重要
YUCOAT
2012-08-22 12:30:46 +08:00
其实楼主,作为计算机专业的学生,我给你补充一下:

第一:楼主对计算机这个专业认识有点片面,计算机专业,不仅仅是编程!因为我们还有数字电路,模拟电路,嵌入式,计算机网络,通信,人工智能,信息安全。编程是计算机行业最普遍,最辛苦最不值钱的行为之一!当然也是最基础的行为之一。

第二:学校里面传授的计算机的基础知识,比如:计算机操作系统。而不是传授流行的知识,比如Android程序设计!因为流行的技术更新快,消失快,所以不适合拿到课堂上来。流行的这些是不是不要学了呢?当然不是,它学要学生自己去学,而不是等待老师去教。你也知道,时髦的技术更新快,老师也肯定是跟不上的。

第三:自学是根本!
Ricepig
2012-08-22 12:31:16 +08:00
我感觉大学里还是需要教授更加基础一点的内容,新兴语言和新兴技术作为选修吧。

很多学校软院虽然无法完全英文授课,但是使用的课程教材和大纲已经比较新潮了,这点还是重要的进步。

还是要分清楚“计算机工程”和“软件学院”的区别的。
66450146
2012-08-22 12:42:06 +08:00
我跟一些老师谈过,其实他们中有一些还是相当有实力的,比如跟我很熟的那位就对Hadoop的性能参数非常熟悉。他们也开了一些相对较新的技术的选修课,比如iOS开发、云计算、ucos之类的。但是这些课程因为学分并不高,而且是选修课,几乎没有学生花很大的精力在这上面,也教不了多少东西。

也有必修课的老师跟我聊过,关于教材的选择。最后老师选择了C++ Primer Plus,可是同学们则是几乎人手一本谭浩强——大多数人对书的质量没有那么高的要求,他们只关心能不能看得懂。

必修课的设置则不是这些老师自己能够决定的,改变的过程实在太长,压根没办法跟上日新月异的技术进步。至于课程设置为什么改变不了其实大家都懂的……除了骂一句狗日的官僚作风之外没有更好的办法了。

对于我自己的经验来说,还是有一些靠谱的老师能够做靠谱的事,但是只靠上课不一定能看出来,得自己去发掘了。
bigeagle
2012-08-22 12:44:24 +08:00
樓主是數學系的這種事情我會隨便亂說麼?
davidx
2012-08-22 12:53:25 +08:00
@sophy 西电垃圾啊...
kokdemo
2012-08-22 12:54:13 +08:00
樓主是數學系的這種事情我會隨便亂說麼?
sophy
2012-08-22 12:54:27 +08:00
@bigeagle 啧啧

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/45750

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX