在完成了一个学期的Java课程讲授任务之后,我设计了一套Java试题,并于 2011年11月22日让它与学生们“见面”。与往届Java考试相比,这次我在考试改良之路上走得更远一些,不仅是开卷,还允许学生带计算机入场,甚至 允许学生上网。不出我所之料,考试完毕之后,就有学生给我发来邮件,叙述其困惑,我觉得学生邮件中所谈到的一些问题是比较普遍存在的,所以就将我给两名学 生邮件的回复汇总了一下,希望能对在校的学生有所帮助。
(学生邮件中除了有些错别子字或不通顺的地方我略作改动之外,基本上保持原貌。)
学生一:
考 完Java后,想了很久!还是有没有想明白,为什么会这样?我真的很认真的去学了(至少比大多数人认真),因为我额外的看了很多书,做线性方程组软件过程 中,我认认真真编程,一步一步实现每个功能模块,为了做好软件,我复习了线性代数、数值分析,收获很多,感触也很多,在这个过程中,我是快乐的,因为每天 我都有进步,我把以往学过的知识做成了实体(虽然做得不是很好,但在这段时间里我尽力了)。我上网,查阅资料,感觉自己不知道的太多了,也感觉了网上学习 的快乐和那份带给我的新奇(一直在接触新东西)。我觉得我喜欢上了这么语言,也决定学好这门语言,今后走开发路线,靠这个吃饭。课件上的大多数例子我都认
真运行,修改后再运行,有时还反汇编一下。
可为什么结果是这样?没复习的同学做的比我好,答的比我多。我做生产者和消费者花了很多时间,最后只做成了形如你上课说的主线程运行50次,子线程运行100次,如此循环的效果。而别人上网或者摘抄一下就搞定了,留下时间做后面的题。
其 实这里我一直很困惑,我也感觉我被现实打败了。为什么我一直和别人想的不一样,你告诉我们网上没有答案,所以我没上网,自己做(结果发现很多在网上都有, 那些没复习,没努力的经过互相讨论,摘抄完成得比我好)。为什么别人就能够想到上网,讨论,而我只会乖乖的听话,毫不怀疑?是我做人的方式出了问题吗?<
虽然说靠投机取巧取得的成果只是暂时的,我也想坚持一些东西。可许多时候我收获的是“失败”,我承认我的临时发挥和理解力不如别人,可我从未放弃过(虽然 有时我想过放弃)。我相信学习意味着改变,所以我尽量做的好些。上大学两年了,我深深体会到分数真的对学生很重要,没有分数,一切都没有了(奖学金、入 党、评优),还增加一些无形的心理压力。我不知道这样做对不对,我大一的时候挂过一科,经历了很多心酸的事,从那以后我就回到了三点一线的生活,学习也在 一直进步。这次是我没把握好,如果我差及格线不多的话,恳请老师给我一次机会,我保证下学期和大四上你的课时不会再出现这样的情况,我会努力去改变!
回复:
等你毕业之后,随着工作年限的增加,你会发现学校里的考试分数真的不重要,另外一些东西的重要性则日益突显。时间就象风,风会吹去浮沙,留下的就是真正重要的东西。
我说网上没有“现成”的答案,是因为许多题是我直接设计的,并非来自于网上,而且题量比较大,如果上网花太多时间,反而影响成绩。其实只要有我讲课的幻灯片,一个Eclipse,再配合上比较扎实的编程基本功,不上网也能完成这次考试。
做事情仅仅靠勤奋是不够的,还要多动脑筋,要不断地寻找更高效的方法,才能在有限的时间内跑得更远,而人生就是比在几十年中谁跑得更远,登得更高。所以勤奋是基础,但多思可能会发现做事更有效率的方法,两者结合,才能让你更为优秀。就这次考试而言,上网搜索就是一个很高效的方法,这些同学很聪明灵活,在这点上你要向他们学习,取长补短,相信最终你不会比他们差的。
学生二:
想 了很久还是决定写这封“求过”邮件,我想老师一定很不喜欢这种行为,但我实在是很恐惧这门课会考砸了。这次考试我花很多时间在前面的题上,有些题虽然我知 道大概,但总想着上网找到更完整的说法,等我开始做编程题时发现只有半个多小时,我就彻底慌了,六神无主地看题、答题,最后的卷面让自己都惊讶了,考完后 就差没哭了,我害怕以后我再努力学习也都失去了保研的机会,害怕给大学的学习抹上黑点..我也知道我应该平时多花时间学习,而不是考完才担心,可其实我花 了不少时间在学习java,
老师讲的很多理论知识我也认真去理解,只是考完才发现自己平常练得太少了,我都是直接编译运行老师给的代码,去理解其中的用法和原理,自己动手编的程序很 少,这次的考试大多是编程的实践题,我就有些傻眼了,以后我应该要努力去提高自己的编程能力,这次考试能不能先请老师高抬贵手让我通过了T.T。。
惭愧的学生
回复:
对你“网开一面”,就是对其他也付出努力的同学的不公平。所以,我会严格按照试卷判分,不特殊对待任何一个同学。
我觉得你努力是努力了,但学习方法不得当,其实在第一节课我就讲了学习编程技术的方法,而我设计的考试试题,也是力图将大家向这个方向引导。
学生再发邮件:
金老师,谢谢您对我努力的肯定,这对我来说很重要。老师能不能对大家都网开一面,改松一些呢,这样说会不会冒犯老师了,额。。觉得大家这学期选的课都挺多,有些超负荷,望老师谅解。
回复:
在公平的前提之下,我打分是很松的。
(附:现在大学里分数对学生还是很重要的,所以我基本上是这个观点:给学生判分尽量往高里判,这样不会影响学生出国或保研,更有利于在中国这个大环境下实现教育的最终目标。 其他老师可能会同意或不同意我的这种做法,没关系,我觉得只要公平就好)
以下是另一个学生的邮件,不是上面谈到的本科生,而是旁听我上学期OOAD课程的一名研究生的邮件:
尊敬的金老师:
您好
感谢您在帮忙之中能够查阅我的这封邮件,我是宇航学院研二的学生,在研一的第二学期我旁听过您的《面向对象技术与方法》课程,您的这门课很精彩,您饱含激情的授课方式也让我甘之如饴,让我学到了专业外的很多知识。
我之前有过.net的一点点基础,也非常爱好这门技术,所以我想在这个方面进一步的深入学习,由于我是非计算机专业的学生,没有足够的时间与精力来学习.Net。在最近的两个月中,我使用Wpf框 架构建了一个《论文管理系统》软件,每当我在编写这个软件的时候,我发现我的思路根本停不下来,不由自主的想随着自己的想法将软件一步一步的编写下去,但 是我知道自己专业的重要性,所以主要的时间都放在了自己的专业学习上,但是在学习自己专业知识的过程中,会突然蹦出一个想法来改善自己的软件,这样就导致
了学习效率比较低下,有点像玩电脑游戏上瘾了的感觉,呵呵。
我知道自己专业的重要性,也希望在.Net这个框架中有所建树,至少在这个框架中达到一定的专业水平。但是精力又限制了我的想法,所以在万分迷茫之际,不得不叨扰您,向您请教几个问题,以期在您这样的高度能够解决我心中的问题。
1,您觉得非计算机专业学习.Net的前途光明吗?
2,您觉得.Net的发展前景是怎么样的呢?与JAVA竞争能成为主流吗?
3,您觉得非计算机专业的人学习数据库还是学习网络更要有竞争力呢?
4,您觉得我应该怎么对待我的业余爱好与专业之间的关系呢?
5,您觉得我应该或者是能够利用业余爱好创造点经济效益吗?这个问题比较功利,您可以直接无视之
PS: 我的专业是导航方向,也就是关于GPS导航、惯性导航。附件中有我最近编写的《论文管理系统》软件,是基于.NET3.5框架编写的,需要至少offce2007以上版本的支持。
我针对他提出的5个问题的回复:
(1)只要真正学好了.NET,前途是光明的,跟你是不是计算机专业毕业的没有太多关系。
(2).NET 与Java基本上处于这种情形:各有生存空间,谁也吃不掉谁。 微软的世界里, .NET是最主要的应用程序开发与运行平台,即使是在微软的“云”Azure中,你也会有一台跑着.NET的Windows虚拟机可用,另外,有 了.NET基础,开发Windows Phone和XBox应用也很容易,你会发现它们使用相同的编程语言和开发工具,拥有高度一致的基类库和编程风范……,除非你跳出微软平台,否则.NET
还是必须要掌握好的。
(3)数据库和网络学精了都能很牛,但如果两者都只是掌握皮毛,那就杯具了。
(4) 如果你真心喜爱软件开发,或者是很不喜欢现有专业,请在研究生毕业时义无反顾地进入IT行业,现在就业形势还不错,相信你能如愿的。如果你不讨厌你的现有 专业,对软件开发的兴趣又不是非常强烈,那么我建议你还是以你专业为主线,以软件开发技术学习为副线,副线为主线服务。具体地说,你要看看你的专业与哪个 计算机开发领域技术最相关(比如你可以看看你们导航领域最牛的软件系统是用什么开发出来的),就抽时间去学习它。我相信你是一定能找到与你专业最相关的这 个技术的,因为现在我还真没有发现能不用计算机技术的行业。
(5)如果有可能,一定要创造点经济效益,这不仅能改善生活,更能极大地增强你的自信心,并敦促你进一步学习,也许一不小心,你就成了某领域中介于牛A与牛C之间的人物,作用太大了 :)
============================================================
希望我的这些建议能对所有想努力学习的学生有所帮助。如有不妥之处,敬请其他老师、学生或业界同行指正。
金旭亮
2011年11月23日
分享到:
相关推荐
【金旭亮C#课件】是一套由知名讲师金旭亮精心编排的C#编程教学资源,包含了丰富的学习内容。这套课件总计10个部分,旨在全面讲解C#语言的基础与进阶知识,适合初学者和有一定经验的开发者进行自我提升。 在C#这门...
《编程的奥秘--.NET软件技术学习与实践》是一本难得的学习VB.NET的好书,是金旭亮老师贡献给初学VB.NET者的一本启蒙书,有了这本书的指引,我们就能踏上面向对象编程之路。《编程的奥秘--.NET软件技术学习与实践》...
本资源包是金旭亮.NET3.5系列课程中的一部分,包括一个PDF文档和几个VS2008示例项目,主要介绍如何在WCF应用程序中实现各种信息交换模式,包括“请求/...更多技术学习资源请看金旭亮博客: http://blog.csdn.net/bitfan
《金旭亮.NET系列》是一套全面介绍.NET技术的教程,由知名IT专家金旭亮编著。这套教程旨在帮助读者在短短七天内迅速掌握.NET框架的核心概念和实际应用,是初学者入门和专业人士提升技能的理想资料。下面将详细阐述...
金旭亮的WCF课程系列旨在深入讲解这一技术,帮助学习者掌握其核心概念和实际应用。 WCF的核心概念包括: 1. **服务契约(Service Contract)**:定义了服务提供的操作和消息交换模式。通过接口或类来声明服务契约...
本资源包是金旭亮.NET 3.5系列培训课程的一部分,重点介绍WCF开发分布式软件系统中非常重要的并发控制与实例管理的技术领域。...更多更新技术学习资源敬请关注金旭亮技术博客: http://blog.csdn.net/bitfan
金旭亮查找大文件工具是一款非常实用的电脑大文件搜索查找工具。您可以指定文件搜索位置以及文件的大小,软件在接受到您的指令之后就可以按照您的条件为您搜索相关的文件,并且在搜索后您还可以直接打开所在文件夹...
《ASP.NET程序设计教程》是金旭亮教授的一本经典教程,主要涵盖了ASP.NET技术的基础到进阶的应用。本教程通过实例源码和基本素材,为读者提供了丰富的学习资源,帮助开发者深入理解ASP.NET的各个核心概念。以下是...
金旭亮《C#面向对象程序设计》教案_6:委托与事件。此教案重点介绍.NET平台上的重要技术——委托,以及对建立于委托基础之上的.NET事件响应机制的深入剖析。包括两个29页的PDF文档及数个VS2010示例。前几讲的教案请...
读书笔记:教材金旭亮《明解java》
金旭亮《C#面向对象程序设计》教案_5:继承、接口与多态。此教案在前4讲的基础之上讲解初学者者比较难于理解的“多态”特性。包括一个39页的PDF文档及数个VS2010示例。前几讲的教案请访问...
编程的奥秘--.NET软件技术学习与实践(随书光盘)2/8 金旭亮著, 电子工业出版社, part8-2 !注:需用虚拟光驱打开,若用WinRAR打开,可能会出现乱码!随后我将共享一款“绿色版迷你虚拟光驱”(只有469K)
金旭亮《C#面向对象程序设计》教案_4:类和对象。此教案针对零面向对象基础的学生,在前3讲的基础之上系统介绍“类”和“对象”这两个核心概念及其在多窗体编程中的应用,包括一个47页的PDF文档及多个示例源码,VS...
金旭亮老师的书既通俗易懂又不乏深度,非常适合入门,虽然是讲.Net2.0,但丝毫不影响其价值,识货的人自然懂得!pdf扫描版,非常清晰,完整三级书签,文件较大,受csdn只能上传小于60MB的限制,只能压缩为4个分卷...
根据给定文件的信息,我们可以提炼出以下几个关键知识点: ### 一、面向对象技术概论 #### 1.1 结构化编程与面向对象编程的区别 **结构化编程**是一种编程方法,强调通过清晰的模块划分来提高代码的可读性和可...
本资源包容金旭亮《C#面向对象程序设计》教案的最后3讲:7 对象集合与对象组合;8 泛型编程;9 对象间的协作与信息交换。包容相关PDF文档及VS2010示例源码。请关注金旭亮博客以获取更多技术资源:...
通过金旭亮老师的这本教程,学习者可以系统地学习ASP.NET的各个方面,并通过配套的习题和实验,深化理解和实践能力,为成为一名合格的ASP.NET开发者打下坚实的基础。在学习过程中,结合教程内容逐步实践,将理论知识...