对还在强制用TC来编写C大程的老师无语了..... 大家觉得这像话吗

2013-03-26 00:43:13 +08:00
 zzNucker
今年变本加厉了..... 不用TC不行了
大家纷纷开始吐槽:

1.
C大程大部分老师还是要求用过时了几十年的Turbo C
连VC6都不让用
理由倒是不错,“为了让学生更好地了解底层”……
我就问下,这到底哪里有关系了?C大程到底是希望学生做什么的?用一个以后肯定用不上的IDE写一些以后都用不上的函数来画出落后时代几十年的界面?
底层以后还要学的啊,这门课能学到什么底层的东西啊?还不如利用这个难得的机会,好好学学某些库怎么用,总比苦逼对着Dosbox调试好啊。
这还跟国际接轨?接的是哪一年的轨道啊?

2.
学长们当年也许都是虽然说要TC,可是也并没有特别强硬地要求,到头来还是大批MFC甚至QT的情况。

而今年的情况是——老师命令禁止TC以外的所有IDE、编译器和库,白纸黑字地写明了一定要用TC写(题目也规定死了)。根据我询问几个学长去年的要求辞令,明显今年的用语要强硬了许多,而且至今所有老师(除了fm以外)都没有让步的意思。今年的情境比去年还严重。

3.
TC缺点:16位DOS程序,其本身和其编译出来的程序都无法在现代操作系统上运行,并且还要面临640KB的内存限制——写个字典程序连词库索引都放不下!另外,其绘制界面和控制硬件的方式已经不是“传统”,而是“完全淘汰”——就算是CLI程序,使用curses库来绘制才是正确的方式(ncurses或pdcurses),而一个用户空间应用程序控制硬件怎么还能用中断!最后,TC不遵从ANSI标准,有些ANSI C程序无法通过编译,而能够通过其编译的程序也大都不符合标准。

我想问,为什么我们在2013年还要抱着一个1989年的产品不放?为什么BORLAND出于纪念意义免费释放出来的TURBO C被我们当作宝贝一样捧着?为什么我们要浪费时间学习这辈子都不可能再用到的Turbo C graphics库?为什么我们要在内存上G的年代里受困于640K的限制?为什么我们要对着8bit界面谈什么“漂亮”、“设计”、“华丽”?



------------------------------------以下是老师的回复------------------------------------------
你的想法很好,我也和其他老师沟通过,该课程是否需要有所改变。我是这样理解的:
1、虽然我们现在接触的很多是超大规模集成电路,但电子课程还是需要从二极管、三极管开始讲。我们这里介绍很多基本的中断、微处理机知识,就是要让大家了解底层知识。
2、这么课的前置课程就是C,如果用到C++,VC甚至其他知识,就不是本课程的要求了,今后,可以有其他课程来完成。
3、我并不完全排斥用VC,但不希望用VC大量的库,只用其基本功能,发挥编程方便完全可以。
4、这门课时间非常有限,要求也不可能很高,我觉得你还是可以在底层知识方面深入研究,如对图像的处理、中断等。对底层研究很深的人,今后一定是计算机安全等领域的高手。



------------------------------------吐槽---------------------------------------------------------
我个人觉得强制用TC纯属浪费生命啊.... 老师的几个理由完全站不住脚
1. 中断什么的以后会有专门的汇编课来学习,C大程课的重点难道不应该是作为第一个大型程序来培养一种写代码的手感和能力么 凭什么就一定连按个键的响应都要用中断实现,并且就算是你想要求这样也完全可以用其它编译器达成啊,可以做成options供大家选择的
2. 不用TC也可以用VC啊 规定不能用C++很难么
3. 不用库你也可以规定啊 何必限死编译环境, TC很多地方都是培养恶习和陋俗的啊
4. ..............没让你要求高


大家觉得强制TC有道理么...... 这都什么年代了学校还在用TC...
无力了都
20378 次点击
所在节点    程序员
108 条回复
kenpusney
2013-03-26 10:20:24 +08:00
无论该用哪个IDE/编译器来教学,所出现的成果都不一定能够好到哪里去。
因为C语言被拿来当作教学的工具本身就被国人给滥用了,用坏了。

同意 @cassyfar 同学的前半部分,说C语言知识用来教授面向过程式的结构化程序设计思想的,但是现在无论是课堂还是课外,学生大部分都还是被各种工具的争端所感染,而没有深入到思想层级上。并且高校里打出的也是教C语言的名号,而不是说什么“结构化程序设计引论”等等之类的。
而C语言内部更高级的能够应用的东西不会被学生所触碰到,比如@bunorte 的说法,大学里学的东西都用不上,可是不应该怪我们学的问题,是不是想想课程该不该这样子设置?动辄就是写一个XX管理系统出来,难道高校的老师们就不觉得无聊么?

另外就是对IDE的纠结。到现在给很多人解释GCC的工作机制的时候头都要大半天,让他们学习GDB都很困难。国内高校被IDE限制的太紧了,以至于很多人初始上手一些东西的时候都不会用。毕竟IDE跟语言也是同一个性质的,语言相对思想来说是工具,而IDE相对语言来说也是工具,如果仅仅纠结于工具的细节忽略了思想,真的是本末倒置了。

@kneep =V=编译器+GCC是什么东西?GCC不就是编译器套件集合么?
YUCOAT
2013-03-26 10:21:08 +08:00
@zzNucker 因为老是只会TC、VC……其他的环境给他们一看他们就蒙了!
duoglas
2013-03-26 10:24:55 +08:00
@sinxccc 浙大用语
bunorte
2013-03-26 10:25:37 +08:00
@zzNucker 既然你们老师强制要求你们用TC写一个大程序,如果这个影响到课程最终得分的话,劝你还是少在网上发牢骚,想想办法怎么过吧。因为就现在看来,你改变不了什么。
sinxccc
2013-03-26 10:25:54 +08:00
@duoglas 所以你们就打算继续这么讨论下去也不解释一下么?
zzNucker
2013-03-26 10:27:54 +08:00
@bunorte thanks 不过这课我已经过了 所以有精力来帮学弟学妹们吐槽一下 :)
0bit
2013-03-26 10:28:44 +08:00
想起了谭浩强这货了!
WarWithinMe
2013-03-26 10:30:07 +08:00
认真你就输了。首先是你现在没有办法改变这些顽固的(混饭吃的?)老师们的想法,所以你只能逆来顺受了。
摆正心态吧,反正就算他们让你用VS2012,他们也教不了你很多东西。你就当做是“出来混所必须交的学费”来浪费一些时间来完成他们的任务吧。你花半天时间去完成他们的任务,剩下的时间你可以去学你自己真正需要的东西。

不要试图从中国的大学教师身上获得前沿的知识。
bityet
2013-03-26 10:31:40 +08:00
当年张引倒是不要求。。。
Ludwiyk
2013-03-26 10:57:11 +08:00
非计算机专业的很多教C/C++的老师不过是混饭吃,机房重新配软件他们都嫌烦,上课也就是照本宣科,很多老师压根就不愿意接受新鲜事物...不过LZ的老师能给你回复已经不错了,至少说明他知道那么回事,而且用TC也不是完成不了课程设计。
学来学去,学的是思想,用的只是工具
thcode
2013-03-26 10:57:13 +08:00
曾经和一位老师讨论过这个问题,谈到MIT用scheme、python作为教学的第一门语言,老师表示,完全按照MIT的课程进行教学在技术等方面没问题,但是找不到合适的老师来教,而且原先那些老教师们就没法安置工作。
Zuckonit
2013-03-26 11:07:18 +08:00
@SharkIng
好老师
SharkIng
2013-03-26 11:11:50 +08:00
@Zuckonit 我们老师还算好,基本属于符合规则的来。只是要求一些比如学Haskell的时候只能用Huge说是为了改作业方便
duoglas
2013-03-26 11:12:00 +08:00
@sinxccc 98这浙大内部一个论坛, fm是一位计算机学院的老师, 也是我的导师.
所以我的本意就是这种夹杂着私货的话题就应该放到内网去讨论.
duoglas
2013-03-26 11:12:32 +08:00
@zzNucker 刚才让FM来看你这贴, 他回复说这烂坑一百年不跳
wzxjohn
2013-03-26 11:22:20 +08:00
@zzNucker
@thcode
老师是懒得备课了懒得学新东西了。。。你说你用TC遇到问题了他基本都能解答。但是你要是用VS2012遇到问题了我敢说90%的问你你老师都不会。。。所以。。。。。。。。。还不懂么。。。

国内的教育完全不像国外,国外是为了“培养”人才,国内是“为了”培养人才。国外老师会鼓励你用新的东西,鼓励你学新的东西,他们自己也会去学习研究这些新的东西。国内的老师哪有时间陪你玩新的东西,他们要忙着赚钱,忙着发论文,忙着做“科研”,忙着教学检查。哦,偶尔忙着集体旅游?乃觉得他们有时间学习新东西?有时间更新PPT?有时间更新教案?有时间去使用VS并且熟悉里面的所有设置以便回答学生的所有疑问?在国内你只要指望老师说的东西不是错的就行了,内容什么的就别强求了。我们这学期有一门Linux课,老师在讲正则表达式的时候,整张PPT上全是错,真的不好说什么了。。。
zzNucker
2013-03-26 11:24:07 +08:00
@duoglas 汗。。 我昨晚就知道他不愿意跳了。。。 你知道了还让他来看。 囧
不过FM是个好老师
hfeeki
2013-03-26 11:45:45 +08:00
觉得你们老师这样做没有一点问题,而且很理解他/她。
学习C语言而已,有必要弄那么多什么IDE、工具进来吗?再说对工具的喜欢每个人都不一样,你说用VC好,那有人肯定说TC好,这个帖子上面还有用VS2012、dev-c++、codeblocks、vim等等,而且还有非常多的类似工具,一定会让你目不暇接,看看这个帖子的回复就知道谈到工具的使用,不可能让所有人满意的。因为万变不离其宗,所以不变应万变。
学习C语言而已,干吗老想着那些IDE呢?要知道要用好IDE,还是要花不少时间的,而且花的时间80%都是与C语言本身无关,或者关系不大的问题上面,例如工具的配置,错误提示的理解上,不同的工具都会有不同的问题,而老师本身已经对TC环境很熟悉了,如果每个学年都换一种新的开发工具,那老师们恐怕都没有精力去准备你们的教学了,注意后面的们了吗?换一种新的开发工具、环境影响的不是一个老师,而是很多老师,计算机环境得换吧,教材、辅导教材得换吧,老师、辅导老师得学习新的知识吧,这些都是牵一发而动全身的问题,任何一个成熟的企业,只要是有可能,都不会随意更换现有的有效的系统、工具,这是一个基本工程常识问题。
bingwenshi
2013-03-26 11:53:01 +08:00
@zzNucker 其实么,内部讨论讨论就好了,LL他们又不是不明事理的人,我相信会改进的
hugodotlau
2013-03-26 11:57:35 +08:00
我认为在xnix平台下学习比dos、win系列系统更具备优势。C语言比较容易接触底层代码,在这点上xnix平台有独特的优势

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

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

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

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

© 2021 V2EX