首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

再谈“《C++ Primer》vs 小弟我国“国情””

2012-07-15 
再谈“《C++ Primer》vs 我国“国情””感谢各位朋友,对『《C++ Primer》一书极不适合我国“国情”』这个帖子的支持!但

再谈“《C++ Primer》vs 我国“国情””

感谢各位朋友,对『《C++ Primer》一书极不适合我国“国情”』这个帖子的支持!

但是,还是有一些朋友,没有仔细读我的主帖呀,以至于误会了我的意思啦……呵呵……

有些朋友看了我的主帖,认为我不了解IDE(的复杂性),或者认为我是在强化IDE的作用,甚至认为我是在强调“不会开发GUI就不是好程序员”—— 这其实都是误解(甚至完全把我的意思搞反)啦 ……

其实,我的主帖里的思路,是很清晰的:(1)国内许多学生或初学者,严重依赖IDE,而教育部门又不注意从概念上澄清,从源代码到二进制代码的嬗变过程。(2)学生之所以依赖IDE而不关心链接、编译等基本概念,是因为他们浸润于GUI。(3)学生对计算机软件体系的世界观往往囿于GUI的运用,那么,他们若是在软件开发上有什么目标的话,则难免总是指向GUI的开发。(4)但由于对整个软件体系脉络在概念上的含混模糊,学生很难理解可视化库如VCL或相关的MFC等等,在GUI软件结构中的地位与作用,这就导致对VCL、MFC、IDE甚至RAD等等概念的接受,在感性认识阶段,就常常被混淆。

其次,软件在使用上的“傻瓜性”与它的实现的复杂性之间,往往是负相关的。也就是说,软件对于它的使用者(尤其是初阶学习者)来说越方便使用,那么该软件本身就越复杂。软件开发工具也是软件,那么,它也服从这个规律 —— 命令行模式的编译器、链接器,(如果要达到IDE的“一站式”功效)对于初学者来说,是比较难以适应和掌握的;而IDE却可以给初学者直观、便捷、形象化的界面。所以,IDE本身的实现,必然要比命令行的,来得复杂得多得多。所以,我从来没有否认IDE的复杂性(特指它在实现上的)。

还有一些朋友,认为我是在以种种理由贬低《C++ Primer》一书 …… 这也是极大的误解。

比如说,有的朋友认为我贬低《C++ Primer》是因为它不讲IDE,这显然是把我的意思搞错了。《C++ Primer》一书,不讲IDE,那是非常正常、合理的事情,该书所讲授的是C++这门语言以及作者们所推崇的某些库的运用,与IDE无涉。但是,由于前述所提到的,许多学生自觉或不自觉地把IDE视为编程学习的必要条件、又把开发GUI软件作为必然与唯一的目标,那么,《C++ Primer》一书显然不能满足这类读者的需求。因为本人将这类读者所体现的,国内计算机软件开发市场与教育领域的现实,视为““国情””(引号里还有引号),所以,自然就得出“《C++ Primer》不适合“国情””的结论。

一直以来我所讲的,都不是在批判《C++ Primer》一书本身及其作者们的心血所成就出的重要价值。

更进一步地说,如果把我的主帖视为对“书”的讨论,那么,朋友们恐怕还没有看到点子上。当然,这也是因为我用了屈折、归谬甚至是戏剧化的笔法,把我的真确意图做了一定程度的隐掩。不过,这也是很有趣儿,不是吗?

后来,还有朋友说我是范儿了“孔乙己”。这也是误解啦 …… 先撇开鲁迅构造出来的“孔乙己”到底蕴含了什么样的历史上的价值观背景不谈,也不讨论当代科学(尤其是基础科学)工作者是否需要“孔乙己”的某些品质,就单说我被误解的那一层:我的主帖,是否真是在强调编程学科一定要掌握“茴之四写”?其实不是的。“茴之四写”在这里可以理解为,那种对历史上的枝蔓性知识,过于迂腐追求的冬烘姿态。而我所强调的,计算机软件体系的脉络化知识,及其体现出的思想,不是枝蔓性的东西,反倒是形而上的范畴。关于这一点,我已在某个跟帖里,详细解释过了。

还有的跟帖,认为我是在强调Perl,并认为我有“不会Perl就是中国教育制度的问题”的主张。这也是误解。这里,先不谈Perl这门语言的“优劣”,我其实是要借着Perl在中国的历史遭遇,从一个侧面,探讨国内软件市场的现实。在大约十几年前,动态Web网站的实现还没有PHP、ASP、JSP的时候,只有CGI,而Perl几乎是唯一的脚本语言的选择。所以,在那个年代,人们学习Perl是非常热烈的。后来,CGI被新的架构取代了,Perl就急剧地被打入冷宫,Java、C#等语言则日益炙手可热。请注意,Perl的专长并不仅仅限于动态Web网站的实现,Java也不是那么晚才出现的新品种,C#也有着很广泛的用途。那么,那种市场上普遍存在的,程序员总是在讨论“C语言过时了吗?”、总是在打听“现在什么语言有‘钱途’?”的现象,到底说明了什么,不是很显而易见的事情吗?那就是,这么多年来,行业发展的历史进程,正是那种一贯性的、过于急功近利的浮躁心态作祟的必然结果。

还有朋友认为我是“倚老卖老”,猜度我是“年龄大”的“老程序员”…… 呵呵,其实我根本不是啦 …… 有朋友说他是1990年大学毕业、专职计算机软件 —— 而对于我,1990年,恰恰才是我计算机启蒙的年份,那时我上小学四年级。

最后,画蛇添足地,我再谈谈有关谭老教授的话题。我跟谭老教授没有直接的接触过,但算是他的一介徒孙。谭老教授历年来不辍的工作,对中国的计算机教育事业,有着先驱性和深远性的影响。我还没有真正深入编程学习的时候,谭老教授那本创下世界纪录的《BASIC语言》一书,就被我衷心地奉为圭臬了。《BASIC语言》一书所蕴含的编程思想,对我的计算机世界观的培养,起到了极深的影响作用,可谓根深蒂固、长久挥之不去,以至于我后来学习C语言的时候,思维难以融入、阻碍重重 —— 这当然是因为我年轻幼稚、乖张不可塑。

我花了很长的时间,终于把BASIC从我的脑子里干净地清扫出去了。于是,我开始思考这个问题:像一张白纸一样的初学者,显然不可能预估到当初启蒙所刻下的印痕,对他/她将来的思想发展,会起到怎样的作用;他/她从一开始,就注定了没得选择。从某种意义上说,他/她是没有“自由意志”的 …… 这种问题不能深究下去,因为在我们这里,它似乎永远是一个悖论性的问题。然而,计算机世界的体系,毕竟是人构造出来的;它的整个结构与脉络,应该可以用有限的、形而上的方式,呈现在学生的面前。这种呈现,至少可以给学生,提供指路牌或灯塔一样的向导,不让他们沦为井中的蛙或枷下的鸭子。说到最后,这是这么一点希望了:学生们能有一种自由,这种自由,不是那种随心所欲、建立在虚无的价值观上的自由,而是一种能让他们获得到更宽的视野、更多的选择机会的自由。




[解决办法]
占座
[解决办法]
特来支持的啦啦啦啦啦啦啦啦
[解决办法]
厉害哇
[解决办法]
牛叉叉……
[解决办法]
占座。
[解决办法]
《程序员的自我修养——链接、装载与库》
[解决办法]
见解很深啊
[解决办法]
楼主很愿意与人争辩,说明楼主城府不深、见识浅薄、孤芳自赏、自视颇高。
这么个破命题竟被楼主抄来抄去。无聊不?果然是谭教授的好徒孙!

[解决办法]
牛人!!啊
[解决办法]
牛人啊
------解决方案--------------------


lz加油
[解决办法]
支持 占座
[解决办法]
lz牛人也
[解决办法]
争辩几句就 城府不深了。什么逻辑
魔装B 装B遭雷劈。

探讨

楼主很愿意与人争辩,说明楼主城府不深、见识浅薄、孤芳自赏、自视颇高。
这么个破命题竟被楼主抄来抄去。无聊不?果然是谭教授的好徒孙!

[解决办法]
我觉得楼主并没有去刻意去那个不好,而是指出当今我国高等教育存在的某些不合理的现象。说的到很深刻,不过作为一个有思想的中国人,而不止是发个贴说说自己的愤怒外,还应该有些具有可行性的见解。通过,你的见解去引导!

热点排行