程序设计类课程默会知识的分类及教学对策研究

时间:2024-12-26 15:45:44 来源:作文网 作者:管理员

摘 要: 根据程序设计类课程的知识特点和教学特点,提出了默会知识的分类,即分成物性、心性、人性和外性的默会知识。在此分类基础上ป给出了一个适合教学设计的教学对策,从而为制订教学方案,组织教学素材提供了理论指导,最终达到增强教学效果,提高教学质量之目的。

关键词: 程序设计; 课程教学; 默会知识; 分类; 计算机教育

中图分类号:G642.0 文献标志码:A 文章编号:1006-8228(2018)03-73-03

Study on the classification of tacit knowledge in programming courses

and the countermeasures of teaching

Hu Mingxiao

(College of Mathematics, Physics and Electronic Informatioin Engineering, Wenzhou University, Wenzhou, Zhejiang 325035, China)

Abstract: According to the knowledge pattern and pedagogical feature of computer programming courses, a classification of tacit knowledge is proposed for these courses. The tacit knowledge is classified into four categories: material-oriented, cognizance-oriented, member-oriented and environment-oriented. A strategy to design well-performed computer programming teaching based on the classification is given such that it can provide a theoretical guidance to make teaching plan, organize teaching material to improve the teaching effect.

Key words: programming; course teaching; tacit knowledge; classification; computer teaching

0 引言

程序O计是高等院校的计算机专业课和计算机公共课,程序设计的基本知识是现代化、信息化人才培养的重要知识。程序设计类课程门类多,如C语言、Java语言、C++语言、Python、VB、ASP、SQL、JSP等。这类课程的教学在高校的教学工作量中占有相当大的比重。由于程序设计类课程的基础性强,覆盖面广,受益学生多,知识时效长,任何关于提高该类课程教学质量的研究都会是很有意义的。

在学习理论中,默会知识(Tacit Knowledge,亦称隐性知识、内隐知识)是Polanyi首先提出的[1],他发现在诸如驾驶、数유学的教学中有一种不可表达的知识。默会知识与显性知识相对,显性知识可以用语言(包括文字、公式、手势等符号系统)来完整表达,而默会知识是传授者不可意识的或者可以意识但不能表达出来的知识。程序设计类课程含有丰富而典型的默会知识,但难以对它进行面向教学对策、符合认知规律、易于应用的有效分类,研究默会知识的特点、种类和相应教学对策,有助于提高程序设计类课程的教学质量和教学效果。

1 国内外相关研究综述

关于程序设计课程教学的研究一直是国内外计算机教学研究的重要内容。M. E. Caspersen(2007)在其博士论文中运用学习理论(如认知载荷理论、认知学徒制、精加工实例方法等)研究了程序设计课程的教学设计[2]。A. K. Lui等(2004)针对弱基础学生提出一个建构主义的Perform教学方法,并给出一组C语言课件开发指导原则[3]。常珊,陈琰等(2010)讨论了程序设计教学中的一般教育学原理的运用[4]。

Collins认为,认知学徒制是解决默会知识传授问题的新型教学模式,并将认知学徒制分成四个教学步骤:建模、指导、骨架搭建和拆除[5],认知学徒制试图让默会知识可视化。S. Ryan等(2009)研究了软件开发团队中默会知识的测度问题[6]。李晓岩和陈晓燕(2005)从默会知识的视角分析了信息技术课程中信息素养的培养问题[7]。刘朝晖(2015)专门就一般工程应用型人才培养讨论了默会知识的重要性[8]。姜君和吕艳娇(2015)分析了默会知识与研究生☿创新能力培养的关系[9]。

关于默会知识的一般分类,D. Perkins将默会知识分为情感、言语理解、身体和社会习俗等几个方面[10]。K. O'Hara等将它分为技能方面的默会知识、背景方面的默会知识和分散在组织中的默会知识[11]。江新、郑兰琴等(2005)将隐性知识分为基于身体的隐性知识、基于言语的隐性知识、基于元认知的隐性知识和基于社会文化的隐性知识等[12]。张东娇(2017)对校园文化传承中一类默会知识的作用进行了探讨[13]。

2 默会知识的分类

2.1 课程特点

程序设计类课程有其知识特点和教学特点。

⑴ 技能性强,认知过程曲折。一个主题往往需要多步骤、多类型的认知单元的存储与加工。

⑵ 层次化明显,认知对象繁多。课程教学内容包含算法、方法学、语法和集成开发环境等多层次的知识内容[14]。 ⑶ 元认知要求高。课程本身具有理论与实践相结合的特点,认知过程需要各种各样的元认知参与。尤其是在所授课程为学生的第一门程序设计课的时候,其元认知的形式和特点与高中课程存在明显的差异。

⑷ 课程地位独特。向前看,课程要求有一定的先修课程基础,向后看,课程具有基础性强的特点。而从左右看,又有多种同类课程。

2.2 默认知识分类

程序设计类课程包含的默会知识亦呈现不同的特点。根据教学实践和理论研究,其默会知识可以按照客观性、即时性两个维度的强弱分成四种类型,分别称之为:物性、心性、人性和外性的默会知识(如图1)。

ϡ

图1 默会知识的分类

⑴ 物性的默会知识,该类默会知识c程序设计的集成开发环境(IDE)有关,主要包括操作方面的默会知识,如操作习惯、操作方式、问题查看的顺序、经验和技巧等。这是客观性、即时性均强的一类。

⑵ 心性的默会知识,该类默会知识与认知和元认知关系密切,它与程序设计的步骤、结构设计、接口设计、调试有关,主要包括解决问题的知识和元认知,如文件组织习惯的养成、文件组织结构与程序功能关系的认识、对出错的直觉反应模式的建立、查找错误的习惯等。心性默会知识客观性弱。

⑶ 人性的默会知识,这是与他人有关的默会知识,该类默会知识涉及团队合作、同学交流、师生交流等,主要包括合作意识、合作方式的建立与调整、合作效率效果、团队的默契、沟通技术、表达能力等。即时性弱。

⑷ 外性的默会知识,主要与社会、环境和文化有关,也与校园文化、企业文化、组织生态、国民性格、地理环境和气候等因素有关,具体如思维模式、心理特征、信念、价值观等。

3 相应教学对策

在程序设计类课程默会知识分类的基础上,按照默会知识显性化、可视化、可迁移性的原则,教学对策亦分类设计,如表1所示。

表1 默会知识的教学对策

[默会知识 关联对象 教学对策 物性 集成开发环境(IDE),操作方面 步骤分解,显性化 心性 程序设计的步骤、结构设计、接口设计、调试 模式下沉,角色翻转 人性 团队合作、交流、合作态度、合作效率效果、沟通技术、表达能力 交流平台,多轮磨合 外性 校园文化、企业文化、地域文化、国民性格等 品格养成,文化熏陶 ]

⑴ 物性的默会知识。由于它只与IDE有关,客观性很强,只需将隐性部分显性化。编程“高手”习惯性地操作演示往往对学生的学习效果不是很好,教学上强调操作的分步骤训练和标准化训练。通过步骤分解尽量显性化,如演示创建工程的“标准”步骤,调试跟踪的“慢镜头”演示。

标准化的操作虽然在一定程度上限制了学生的尝试性操作的发挥,但对初学者的操作技能学习能起到立竿见影的作用。

⑵ 心性的默会知识。根据程序设计的特点,让学生建立元认知能力,揭示认知规律。例如:对程序错误通常所隐藏方式的发现方法,指导学生做好方法总结归类,学会如何学习,将如何习得知识的能力作为知识,实行认知模式下沉。对如何形成良好的文件组织方式、领悟C/C++语言#include命令的包含方式、优化类声明的层次结构都需要此类认知。Debug的敏感性需要反复的代码编写、出错、纠错才有领会,教学中要角色翻转,适当地故意让学生遭遇错误,然后再指出错误原因。此类默会知识客观性弱,需要模式下沉和角色翻转。

⑶ 人性的默会知识。教学措施要提高与他人的沟通技术,更准确地说,是沟通技术在程序设计中的应用水平,关键要让程序设计者培养一种意识,即自己的程序是给别人和一段时间后的自己阅读或使用的,自己也要阅读或使用别人的程序。只有在编写程序时,时刻渗透这种意识,才能顺利实施团队合作。相应教学对策是互相评价程序,合作完成程序设计等。此类默会知识即时性弱,需要多轮磨合。

⑷ 外性的默会知识。它包括程序设计所需的思维模式、性格和地域文化,这类默会知识的覆盖范围最广,影响最深远,但是相应教学对策的设计最难,效率最低,需要长期的潜移默化。教学对策大体上可以采取在课堂上穿插先进的计算机文化,比如语言设计者及其实验室的资料、计算机图灵奖获得者的生平介绍、IBM的“蓝色”企业文化、德国人的严谨与工程成就等。

在程序设计类课程默会知识的上述分类和相应教学对策的指导下,教师可以结合实际情况有的放矢地制订具体教学方案,选择教学素材,制作相关课件。

4 结束语

本研究首先是给程序设计类课程的默会知识分类,然后在该分类的基础上研究教学对策,克服默会知识在教学过程中带来的困难。多年的教学实践表明,基于默会知识的教学对策对学生学习程序设计的兴趣培养具有积极作用,以温州大学为例,可以从近几年学生参加程序设计竞赛(ACM、天梯团体赛、蓝桥杯等)、软件设计师考证等活动的报名积极性和获奖人数的逐年提高中得到印证。

本文所及隐性知识的分类基于两个维度,进一步研究方向是课程隐性知识的多维分类,以及隐性知识教学效果的定量评估机制。

参考文献(References):

[1] Polanyi M.. The Tacit Dimension[M]. Peter Smith,

Gloucester, Mass, 1983. Chapter 1:Tacit Knowing

[2] Caspersen M. E., Bennedsen J.. Instructional design of a

programming course: a learning theoretic app☒roach[C]. In: Proceedings of the third international workshop on Computing Education Research,2007:111-122 [3] Lui Andrew K., Kwan Reggie, Poon Maria, Cheung Yannie H. Y.. Saving weak programming students-applying

constructivism in a first programming course[J].ACM SIGCSE Bulletin,2004.36(2):2-76

[4] 常珊,琰,徐东风,田绪红.教育学理论在C语言程序设计教

学中的应用.计算机教育,2010(24):108-111

[5] Collins A., Brown J. S., Newman S. E., (1987). Cognitive

apprenticeship: Teaching the craft of reading, writing and mathematics[R]. Technical report,1987.

[6] Ryan S., O'Connor R. V.. Development of a team measure

for tacit knowledge in software development teams[J]. The Journal of Systems and Software,2009.82:229-240

[7] 李晓岩,陈晓燕.从默会知识看信息技术课程的教学[J].中国

电化教育,2005.12:63-65

[8] 刘朝晖.工程应用型人才的默会知识及其养成教育[J].职业

技术教育,2015.31:40-43

[9] 姜君,吕艳娇.默会知识与研究生创新能力培养[J].继续教育

研究,2015.9:100-102

[10] Perkins D.. Types of TK[DB/OL]. http://gseweb.harvard.

edu/~t656_web/Basic_pages/ orientation.htm

[11] O'Hara K., Shadbolt N.. Managing Knowledge Capture:

Economic, Technological and Methodological Considerations[DB/OL]. http://eprints.aktors.org/44/01/valuation-methods.pdf

[12] 江新,郑兰琴,黄荣怀.关于隐形知识的分类研究.开放教育

研究,2005.11(1):28-31

[13] 张东娇.看见与听见:学校文化的意会与言传――兼论波兰

尼的默会知识观及其启示.教育研究,2017.9:28-36

[14] 胡明晓,刘海霞,励龙昌.程序设计类课程的层次化教学模

式研究与实践.计算机时代,2013.3:58-61


热门排行: 教你如何写建议书