APP下载

应用型本科高校程序设计类课程培养模式及课程体系改革

2021-07-28张剑锋

科技资讯 2021年10期
关键词:课程体系改革应用型本科高校

张剑锋

摘  要:程序设计能力是计算机相关专业学生必备的基本技能,学生掌握程序设计类课程的程度将直接影响其程序设计及软件开发能力。该文从人才培养方案改革、程序设计类课程体系改革、实验教学(课程设计)改革、“以赛促教”、校企合作协同育人等方面,结合项目组成员多年教学和管理经验,对应用型本科高校计算机程序设计类课程在组织、实施、评价等方面的改革和创新思路与做法进行阐述。

关键词:应用型本科高校  程序设计类课程  教育培養模式  课程体系改革

中图分类号:G712.3                        文献标识码:A文章编号:1672-3791(2021)04(a)-0160-04

Training Mode and Curriculum System Reform of Programming Courses in Application Oriented Universities

ZHANG Jianfeng

(College of Computer Information of Minnan Science and Technology University, Quanzhou, Fujian Province, 362332  China)

Abstract: Programming ability is a basic skill for students majoring in computer science, the degree of students' mastery of programming courses will directly affect their ability of programming and software development. The paper discusses from several aspects, the reform of personnel training program, the reform of program design curriculum system, the reform of experimental teaching (curriculum design), promoting teaching by competition, and school enterprise cooperation in education, combined with many years of teaching and management experience of project team members, expounds the reform and innovation ideas and practices in the organization, implementation and evaluation of computer programming courses in application-oriented universities.

Key Words: Application oriented universities; Programming courses; Education and training mode; Curriculum system reform

程序设计类课程是计算机本科相关专业教学中重要的专业基础课程,也是计算机类专业的核心课程。针对不同专业和年级的学生,相应开出C、C++、Java、ASP、PHP、Python等语言类课程,以编程语言为平台讲授程序设计的思想和方法,旨在培养学生良好的程序设计素养和习惯,提高学生对计算机科学的兴趣。通过数据结构、数据库原理、软件工程、网站设计等课程的实践环节培养和锻炼学生利用程序设计语言进行编程和代码调试的能力,提高独立分析、解决实际问题的水平。

然而,在程序设计类课程的教学过程中,教师和学生普遍认为此类课程所涉及的概念和语法规则比较复杂,知识点较多,不易掌握,容易出错,部分学生反映上课时能听懂,自己动手编程时脑子一片空白,无从下手,出现听得懂、写不出程序的现象。针对以上情况,项目组从理论和实践上探索了一些新的培养模式和教学方法,取得了较好的教学效果。

1  改革的总体思路和目标

根据应用型民办本科院校办学的规律和特点,结合学校和学院学生实际,通过对传统计算机程序设计类课程的教学改革,不断创新其教学内容和教学方法,充分调动教师和学生教与学的积极性,激发学生学习兴趣,提高学生的程序设计能力。在教学计划制(修)订、课程设置的过程中始终注重与学科发展状况相适应,保证课程内容的先进性,教学计划一年一修订,修订必新,保证课程内容的先进性。在课程的学时安排上,以计算机相关专业人才培养目标为导向,在确保理论知识必需和够用的基础上,切实加强程序编写和引入实际项目案例等实践性环节,使理论教学与上机实践有机结合。在教学手段的创新上,尝试使用翻转课堂、PBL教学法、项目化教学、慕课/微课等新的教学手段,遵循以应用为目的、以任务为驱动,有效运用各种教学方法,依据多环节、循序渐进的原则,构建课程实验、课程实训和课程设计3个层次和阶段的渐进式的实践教学体系。

2  程序设计类课程改革的主要举措

2.1 程序设计类课程群建设

程序设计类课程种类繁多、内容复杂,为避免课程间存在重复内容或内容孤立现象,在专业教学计划制订时注意加强程序设计类课程群的建设。实践表明,课程群建设有助于学生系统全面地学习软件设计所需要理论知识和专业技能。在2017级、2018级人才培养方案和专业教学计划的制订上,各专业负责人严格遵循课程关联性、整合性、科学性原则,确保开出的课程在连续几个学期里具有一脉相承和承前启后的关系,充分体现知识体系的融合、分解和实践的过程。

以计算机科学与技术专业为例,通过两年的教学实践,确定了该专业课程群的课程由C语言、数据结构、Java语言、算法设计与分析、PHP(ASP)程序设计、嵌入式程序设计、Android应用程序开发、Python编程基础共8门课程组成。从新生第一学期起每学期都有编程类的课程,做到程序设计课程和训练不断线,课程之间衔接紧密、过渡平稳,去除冗余内容,逐渐增加难度和具体的项目案例,形成科学完整的程序设计理论和实践教学体系。

2.2 改革传统的教学模式和方法

传统的程序设计类课程教学模式和方法一般采用“知识结构驱动”的教学法,教师参照教材循序渐进地按知识点讲授,尽管书本中针对某个特定问题也设置了代码案例,但这些案例往往是没有联系的,是孤立的。这导致课堂教学过于注重细节,大量时间花在抠语言的细节上,学生难以把握重点,所学习的知识点是零碎不系统的,学完一门语言类课程后学生只是掌握了一些语法规则和程序流程,却不知道如何利用其进行一个具体项目的开发。

针对以上情况,项目组教师采用“案例或项目驱动”教学法进行教学。通过实施一个完整的项目进行教学,教师通过示范项目引导学生掌握基础知识,运用知识迁移、分组协作、集中讨论等方式完成知识构建,按照“项目—模块—任务—问题—知识点”的思路实施教学,达到培养学生解决实际问题能力的教学目标。

实践表明,学生通过在学习过程中参与一个完整项目的分析、设计和实现的全过程,能将课堂学习的理论和实践有机地结合起来;学生在教学过程中不是被动的接受者,而是积极的参与者。这种开放性的教育思想和模式,克服了以往教学模式的弊端,有利于学生快速积累软件项目开发的经验。

2.3 改革程序设计类课程的实验教学方法

实验教学是程序设计类课程教学过程中的重要环节,是课堂教学的延伸与补充。实验课的目的不仅是为了验证教材内容或所写程序正确与否,更重要的是培养学生的编程思想、逻辑思维能力、创新及独立工作的能力,引导学生利用程序设计语言编程解决实际问题。

首先,对程序设计类课程的学时数进行了调整,将总课时80学时的课程从每周的“4+1”调整为“3+2”,将总课时64学时的课程从每周的“3+1”调整为“2+2”,变以往两周一次实验课为每周一次实验课。这样的学时结构调整在保证总学时不变的情况下,减少了理论课课时,增加了实验课课时,遵循应用型本科高校“既重理论,更重实践”的办学理念,注重实践操作技能的培养。

其次,将实验课内容分为基本内容、提高部分、综合实践3个层次:基本内容要求学生掌握程序设计语言基本的语法规则、命令及程序结构;提高部分在基本内容的基础上增加深度、广度和难度,要求学生设计开发文本编辑器、图像浏览器、学生信息管理系统等接近实际应用的小程序,培养学生综合利用程序设计语言的能力;综合实践部分吸收部分学生以成员形式参与教师的科研活动或课题中,提高学生项目开发能力和团队协作精神。

在实验课教学方法上,强调“以学生为中心”,学生是学习的主体,教师是教学的组织者和设计者。在具体教学中,团队教师遵循启发式教学原则,课前先将该次实验的重点、难点及基本算法、编程思路等进行必要的讲解演示,再让学生动手编写程序。教师对学生的动态操作过程予以指导,对学生的问题不直接公布答案,而是从基本概念、编程思路和调试技巧等方面进行讲解,引导学生主动思考。对实验过程中共性的问题组织学生集体讨论,让学生充分发表自己的思路和见解,鼓励学生积极思考探索并完成程序的设计和开发。

2.4 引入“课程设计”“综合实训”实践环节课程

程序设计类课程的课程设计、综合实训等实践环节是计算机类本科人才培养的必要环节,是学生在完成一门程序设计类课程学习后提升和综合检验其程序设计和软件开发能力的重要手段。为此,在各专业每学期相应程序设计类课程结束后及学期结束放假前,为该门课程安排1~2周(7~12天)的课程设计或综合实训实践环节课程。以信息工程专业为例,分别在第二学期安排《高级语言程序课程设计》(1周)、第三学期安排《Java程序课程设计》(1周)、第四学期安排《嵌入式系统课程设计》(1周)、第五学期安排《动态网站课程设计(ASP、PHP)》(1周)、第六学期安排《移动软件开发课程设计(Android)》(1周)。

学生以个人或项目小组为单位,完成一个一定规模大小的实际项目案例,案例可以是指导教师指定或经指导教师审定的自选案例,学生在统一时间到机房完成项目开发,指导教师到场指导。课程设计主要从任务完成情况、实践动手能力、课程设计报告、项目答辩质量等几方面进行考核。经过对各年級专业几个学期以来课程设计实践的实施效果看,教师普遍反映学生的参与度和积极性较高,学生在项目开发中不断经历遇到问题、分析问题、解决问题并最终完成项目时由衷感受到成就感。学生普遍反映通过一个实际项目的开发,使自己提前感受到了在软件公司中团队开发的氛围,书中原本枯燥的理论知识在实践中变得鲜活和触手可及,对程序设计从此前的陌生、畏难逐渐转变为熟悉和喜欢。

2.5 “以赛促教,以赛促学”,鼓励学生参加各类程序设计竞赛

在全面提升学生程序设计素养和实践能力创新方面,推广“以赛促学,以赛促教”模式,积极鼓励学生参加各级各类程序设计竞赛,能充分发挥教师的主导作用和学生的主体作用。学院和项目组依托“大学生软件人才培训基地”、专业学会等组织吸纳基础较好且热爱程序设计的学生,教师定期对学生进行授课、组织项目案例研讨,针对各级各类程序设计竞赛进行有针对性的辅导、集训和组织参赛。

学院在各专业的程序设计类课程教学中充分结合ACM 竞赛,把ACM 竞赛的Online Judge平台引入教学,从竞赛式案例教学、竞赛式实验、竞赛式分组练习、竞赛式考试和竞赛式教学团队组建5个方面着手,开展程序设计类课程教学模式的一系列改革,包括引入ACM-ICPC竞赛案例,提高教学效率;开展竞赛式实验,提高学生实践能力;提倡竞赛式分组练习,提高团队合作意识以及学习能力;实施竞赛式考核方式和评价机制,强化应用技能;组建竞赛式教学团队,保证教学质量。2019年,项目组组织部分经选拔的学生开展为期一个月的暑期ACM集训,通过辅导学生做题、真题练习讲解、组织周赛和综合赛等形式提高学生代码编写能力,提高学生利用计算机语言解决实际问题的能力,提高学生团队协作能力。

学院鼓励项目组成员积极组织和指导学生参加各级各类程序设计大赛,2018—2020年连续三年组织学生参加了第九至十一届“蓝桥杯”全国软件和信息技术专业人才大赛,共获得省赛一等奖3项,二等奖9项,三等奖10项;2019年组织学生参加“和信创天杯”第十届福建省大学生程序设计竞赛,参赛队伍获得铜奖。通过比赛的历练,不仅提高了学生的专业技能,也提升了任课教师和竞赛指导教师的教学能力和水平,这一改革举措得到了广大学生的普遍认可。

2.6 深化产教融合,加强校企合作、协同育人

2017年12月,国务院办公厅印发了《关于深化产教融合的若干意见》,校企双方要认真落实党中央、国务院关于教育综合改革的决策部署,深化职业教育、高等教育等改革,发挥企业重要主体作用,促进人才培养供给侧和产业需求侧结构要素全方位融合,培养大批高素质创新人才和技术技能人才。

计算机学科知识更新迭代速度快,新技术、新语言、新方法层出不穷,高校教师如果长期囿于校园和课堂教学环境,难以避免出现知识老化、教学手段陈旧,教学内容和效果无法满足用人单位需求等问题,导致学生毕业后难以在短时间内适应软件企业项目开发的技术要求。学院和项目组成员为突破以上困局,缩小毕业生就业技能与企业实际需求之间的鸿沟,促进毕业生就业,积极响应国家深化产教融合,加强校企合作、协同育人的要求和号召,努力寻求和采用校企合作、联合培养的教学模式。通过加强课程建设、组建“双师型”教学队伍、建设优质实训基地,企业教师进课堂、输送学生赴企业等途径,将校企合作融入程序设计类课程的教学,实现学校、企业、学生的“三赢”。

2017年3月,计算机信息学院与厦门中软国际联合申报的“教育部国家大学生创新创业训练计划联合基金项目”举行了基地揭牌和项目启动仪式。2017—2018年,学院先后组建成立两届“国创班”,开展集“教、训、测、评、职、创”六位一体的程序设计和创新创业训练。通过企业派出一线技术人员赴校授课及学生赴企业集中实训的方式,针对一门语言或一个技术方向进入深入的、企业项目式的强化训练。在“国创班”的整个实施过程中,企业对学生的日常管理甚至严于学校的要求,包括人才培养方案、实训周报、阶段性项目演示成果和成绩、项目路演展示等在内的过程资料的收集整理详实完整,并定期由专人向学院国创项目负责人汇报学生学习情况。

经项目组成员赴企业实地走访调查、与参与学生举行座谈及对参加“国创班”后的毕业生入职第一份工作的入职体验和薪资的跟踪调查发现,学生在软件企业中经过一段时间有针对性、置身于真实开发环境的实践技能培训后,普遍展现出良好的编程规范和技巧,较熟练的软件框架搭建技术和一定的项目开发经验。这一改革举措切实使学生在真实的工作环境中完成了“学”与“用”的转换,实现了学校学习向岗位工作的转换,提高了学生就业能力。

3  结语

《应用型本科高校计算机程序设计类课程教育培养模式及课程体系改革研究》项目自立项以来,项目组成员合理分工、协同配合,多方位、多角度入手,努力尝试和创新模式与方法,尽管期间也遇到部分教师因循守旧不积极配合教改,部分学生由于动手能力较弱或自身对程序设计课程兴趣不高、参与度低等问题,但项目组始终坚定课程改革创新的初心和使命,努力克服和降低外部压力,力争完成项目既定目标。

项目实践证明,课程教育培养模式、课程體系和教学方法都不是一成不变的,更没有条条框框的约束。只要教师“以生为本、以教为根”,遵循教育规律,站在学生的角度认真钻研思索,就一定能找到提高程序设计类课程教学效果的,为广大学生乐于接受,能充分调动师生教与学积极性,发挥师生潜能的良好的课程教育培养模式和教学手段方法。

参考文献

[1] 云微,赵亚男.信息与计算科学专业程序设计课程群的建设与研究[J].科技资讯,2018,16(21):203-204.

[2] 高玮.应用型高校面向对象程序设计课程教学改革探索[J].科技创新导报,2019,16(4):220,222.

[3] 樊瑶.计算机专业程序设计类课程教学改革中的探索研究[J].教育教学论坛,2019(43):99-100.

[4] 秦丽娜.基于蓝桥杯软件设计大赛Java程序设计教学模式与方法的探讨[J].现代盐化工,2019,46(5):127-128.

[5] 谢晓伟.高职程序设计类课程“四位一体”的教学模式研究[J].现代职业教育,2017(35):152.

[6] 高欢.自主学习模式下微课在高校教学中的实践研究[D].河北师范大学,2019.

猜你喜欢

课程体系改革应用型本科高校
应用型本科高校《交通规划》课程教学改革探索
应用型本科院校建筑学专业人才培养中产教融合的途径研究
互联网时代独立学院金融专业课程体系改革与优化研究
“2+X”培养模式下软件工程专业综合改革探索
应用型本科高校创新创业教育的路径创新研究
高职电气自动化专业技能竞赛与常规教学融通的研究与实践
“现代学徒制”下的机电专业课程改革探索
基于应用型本科高校推进产教融合的思考
应用型本科高校教育学专业人才培养模式分析
应用型本科高校大学英语教学改革的定位策略