今年变本加厉了..... 不用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...
无力了都
大家纷纷开始吐槽:
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...
无力了都