论文部分内容阅读
摘要:本文从3个编程教学方面的常见问题和通过与基础理论学科教学的结合性两方面,探讨了在校生进行Python语言编程学习的可能性,将一门通常作为程序爱好者广泛使用的,易学易用的编程语言进行一定范围的教学尝试。通过本文的探讨,期望运用在教学中能够提高计算机理论与实际工作的耦合度,提高学生学习相关课程的趣味和动力、提供给学生进行自我学习的技巧。
关键词:Python;伪代码;TCP/UDP
Python是一种面向对象的直译式计算机程序设计语言,由Guido van Rossum:]:1989年底发明,第一个公开发行版发行于1991年。Python语法简洁而清晰,可以很轻松的调用其它语言(如c或c++)编写的模块(dll文件),由于开发速度很快,在计算机编程普及的一些国家它的应用很广,但在中国还处于起步阶段。
1、传统编程教学活动的特点
传统编程教学活动存在一些显而易见的问题:
1.1 冗长的语法学习过程
目前在高等教育学校的编程学习中,几乎无一例外的以C、c++、C#、VB.net或java等为主,其中VB.net相对还是比较好掌握的编程语言,而C、c++所属强类型编程语言语法的复杂,及大量出现的语法陷阱使得学生在大多数的时间里成为一个“纠错者”,在学习过程中花费不菲的时间来修正代码中的错误和漏洞,而忽视了编程思想的培养,容易造就会编程语言工具、不会实现编程工作的现象。c#虽然是—种较好的面向对象编程语言,但在实现上对计算机环境的配置要求还比较高,对一些资金上比较紧张的学校机房来说,更新设备的代价太大,同时由于c#不支持除windows以外的平台,造成某些欲在非windows系统环境下学习的学生缺乏相关的学习环境。
1.2 校内授课制度的局限
编程语言的学习是一个长期和持续的过程,往往对时间上的需求较多。而学校教学活动的局限性,如为避免课程与课程的冲突、不能对编程课程进行集中授课,而是像学习历史、政治一样分节学习。造成上节课学习的内容这节课就忘记的现象比比皆是。编程类课程在客观上本就容易令学生产生厌学情绪和学习的枯燥感,而学生迫于就业压力往往产生在校内学习、课外还报修各种社会编程学习班的普遍现象。
1.3 对学生自身学习背景的强烈依赖不利于非计算机专业学生的自修
学习上历来是“师傅领进门,修行在个人”,教师不论教学能力多高,最终起到的还是一个启蒙的作用。然而,一门过于难以掌握的语言大幅度提高了学生自己持续学习的难度。比如C语言的学习,要求学生具有较扎实的计算机背景,对堆栈、内存、指针、数组等有较深入的了解,对代码的书写有诸多严格的要求。对外专业或计算机背景知识不扎实的学生来说,查看程序代码如看天书,书写产生错误的时候又找不到究竟是书写错误还是逻辑错误。一来二去很容易就此放弃。
2、PythOn在教学中能起到的作用
2.1 降低了学习的难度
Python的代码书写规则与计算机算法中的“伪代码”极其相似,由于其最初被发明的时候就是为了增强其易用性(Guidovan Rossum参考了ABC语言的特性进行了开发),其语言的书写接近于日常英语,可以说只要略加学习,就可以迅速掌握。这对教学资源的节约起到很好的作用;python unicode字符集全面支持,我们不用去考虑ascii字符集的字节存储空间问题(unicode字符在其它语言中都存在较复杂的转换问题),而直接编写出可以被执行的小程序;由于python强大的序列(Python的序列包括各类定长数组、动态数组、字符串等等的特性)操作能力,使得在同一个序列中放置不同数据类型的数据成为轻而易举的事,我们不必再进行复杂的组合变量声明和处理;python隐藏了所有指针的行为,所有的变量值都是引用类型,令我们掌握起来更加容易。
N-Python自身的IDLE不论是在windows上还是在UNIX上都有很好的支持。只需要对python进行简单的入门学习,就可以迅速在短时间内书写出执行效率高的代码。
2.2 增强学生学习的动力
由于抛开了对专业背景的过度依赖,使得非计算机专业的学生也有可能快速掌握并进行编程实践,极大地提高了学生对编程思想的理解。在国内存在着数量庞大的编程爱好者,这些爱好者往往没有经过系统的计算机理论的学习,而Python的易用性基本可以克服这种对专业知识的过分依赖,面向用户的设计和偏重程序逻辑的编码方式让人从“计算机式思考”解脱出来,进入提升编程思路的良性循环中来。
2.3 强大的类库降低编程的复杂性
Python有强大的各种类库的支撑,大量开源、免费的编程资源的存在和便于布置使得很容易快速实现开发和测试。Python是开源的,这意味着为了工作的方便性,我们可以自行扩展Python的库,实现有自己风格特色的类库。
3、Python的未来需求
就业作为高校教学目的之一,未来必然会逐步加强对学生就业能力的培养。Python作为一门较新的编程语言,经过最近几年的逐步推广,现在已渐渐成为一门热门的程序语言,未来的就业前景广阔。Python贴合自然语言的伪代码风格和注重编程逻辑的编程方式,注定会在未来有广阔的应用。学生通过不同课程、不同知识采用它来编写小程序,来理解相关理论知识,对学生理论联系实际的能力的提高具有—定作用,同时对其它编程语言的学习也起到较强的辅助作用。
关键词:Python;伪代码;TCP/UDP
Python是一种面向对象的直译式计算机程序设计语言,由Guido van Rossum:]:1989年底发明,第一个公开发行版发行于1991年。Python语法简洁而清晰,可以很轻松的调用其它语言(如c或c++)编写的模块(dll文件),由于开发速度很快,在计算机编程普及的一些国家它的应用很广,但在中国还处于起步阶段。
1、传统编程教学活动的特点
传统编程教学活动存在一些显而易见的问题:
1.1 冗长的语法学习过程
目前在高等教育学校的编程学习中,几乎无一例外的以C、c++、C#、VB.net或java等为主,其中VB.net相对还是比较好掌握的编程语言,而C、c++所属强类型编程语言语法的复杂,及大量出现的语法陷阱使得学生在大多数的时间里成为一个“纠错者”,在学习过程中花费不菲的时间来修正代码中的错误和漏洞,而忽视了编程思想的培养,容易造就会编程语言工具、不会实现编程工作的现象。c#虽然是—种较好的面向对象编程语言,但在实现上对计算机环境的配置要求还比较高,对一些资金上比较紧张的学校机房来说,更新设备的代价太大,同时由于c#不支持除windows以外的平台,造成某些欲在非windows系统环境下学习的学生缺乏相关的学习环境。
1.2 校内授课制度的局限
编程语言的学习是一个长期和持续的过程,往往对时间上的需求较多。而学校教学活动的局限性,如为避免课程与课程的冲突、不能对编程课程进行集中授课,而是像学习历史、政治一样分节学习。造成上节课学习的内容这节课就忘记的现象比比皆是。编程类课程在客观上本就容易令学生产生厌学情绪和学习的枯燥感,而学生迫于就业压力往往产生在校内学习、课外还报修各种社会编程学习班的普遍现象。
1.3 对学生自身学习背景的强烈依赖不利于非计算机专业学生的自修
学习上历来是“师傅领进门,修行在个人”,教师不论教学能力多高,最终起到的还是一个启蒙的作用。然而,一门过于难以掌握的语言大幅度提高了学生自己持续学习的难度。比如C语言的学习,要求学生具有较扎实的计算机背景,对堆栈、内存、指针、数组等有较深入的了解,对代码的书写有诸多严格的要求。对外专业或计算机背景知识不扎实的学生来说,查看程序代码如看天书,书写产生错误的时候又找不到究竟是书写错误还是逻辑错误。一来二去很容易就此放弃。
2、PythOn在教学中能起到的作用
2.1 降低了学习的难度
Python的代码书写规则与计算机算法中的“伪代码”极其相似,由于其最初被发明的时候就是为了增强其易用性(Guidovan Rossum参考了ABC语言的特性进行了开发),其语言的书写接近于日常英语,可以说只要略加学习,就可以迅速掌握。这对教学资源的节约起到很好的作用;python unicode字符集全面支持,我们不用去考虑ascii字符集的字节存储空间问题(unicode字符在其它语言中都存在较复杂的转换问题),而直接编写出可以被执行的小程序;由于python强大的序列(Python的序列包括各类定长数组、动态数组、字符串等等的特性)操作能力,使得在同一个序列中放置不同数据类型的数据成为轻而易举的事,我们不必再进行复杂的组合变量声明和处理;python隐藏了所有指针的行为,所有的变量值都是引用类型,令我们掌握起来更加容易。
N-Python自身的IDLE不论是在windows上还是在UNIX上都有很好的支持。只需要对python进行简单的入门学习,就可以迅速在短时间内书写出执行效率高的代码。
2.2 增强学生学习的动力
由于抛开了对专业背景的过度依赖,使得非计算机专业的学生也有可能快速掌握并进行编程实践,极大地提高了学生对编程思想的理解。在国内存在着数量庞大的编程爱好者,这些爱好者往往没有经过系统的计算机理论的学习,而Python的易用性基本可以克服这种对专业知识的过分依赖,面向用户的设计和偏重程序逻辑的编码方式让人从“计算机式思考”解脱出来,进入提升编程思路的良性循环中来。
2.3 强大的类库降低编程的复杂性
Python有强大的各种类库的支撑,大量开源、免费的编程资源的存在和便于布置使得很容易快速实现开发和测试。Python是开源的,这意味着为了工作的方便性,我们可以自行扩展Python的库,实现有自己风格特色的类库。
3、Python的未来需求
就业作为高校教学目的之一,未来必然会逐步加强对学生就业能力的培养。Python作为一门较新的编程语言,经过最近几年的逐步推广,现在已渐渐成为一门热门的程序语言,未来的就业前景广阔。Python贴合自然语言的伪代码风格和注重编程逻辑的编程方式,注定会在未来有广阔的应用。学生通过不同课程、不同知识采用它来编写小程序,来理解相关理论知识,对学生理论联系实际的能力的提高具有—定作用,同时对其它编程语言的学习也起到较强的辅助作用。