周雪芹
山东理工大学 山东 淄博 255012
为了深入贯彻落实教育部《高等学校课程思政建设指导纲要》,紧紧抓住教师队伍“主力军”、课程建设“主战场”、课堂教学“主渠道”,让所有高校、所有教师、所有课程都承担好育人责任,守好一段渠、种好责任田,使各类课程与思政课程同向同行,将显性教育和隐性教育相统一,形成协同效应,构建全员全程全方位育人大格局。
在新时代社会主义现代化强国建设,高等教育快速发展的背景下,教师不仅要传授知识,培养能力,还要教导学生树立正确的价值观,因此,高校开展课程思政势在必行。课程思政不是思政课程,也不是简单的课程+思政。开展课程思政需要专业课程与思政的融合,是培养中国特色社会主义建设者和接班人的多维度教育变革,是育人观、使命观、教学观、课程观的教育变革。
教育部发布《高等学校课程思政建设指导纲要(教高[2020]3号)》明确要求,课程思政元素作为课程设置、教学大纲核准和教案评价的重要内容,落实到课程目标设计、教学大纲修订、教材编审选用、教案课件编写各方面,贯穿于课堂授课、教学研讨、实验实训、作业论文各环节。要讲好用好马工程重点教材,推进教材内容进人才培养方案、进教案课件、进考试。要创新课堂教学模式,推进现代信息技术在课程思政教学中的应用,激发学生学习兴趣,引导学生深入思考。要健全高校课堂教学管理体系,改进课堂教学过程管理,提高课程思政内涵融入课堂教学的水平。
专业课程是课程思政建设的基本载体。教师要根据学校定位、专业建设目标、本课程在专业中的地位,支撑的哪些毕业要求,分析出该课程应该支持的毕业要求的哪些指标点,根据指标点的相关要求决定课程的培养目标、授课内容,继而进行教学设计、教学实施、课程考核。根据这一思路,要把思政元素融入课堂教学的每个教学环节。
首先,在课程培养目标中融入思政元素。专业课程要根据学科、专业的特色和优势,深入研究不同专业的育人目标,深度挖掘提炼专业知识体系中所蕴含的思想价值和精神内涵,《Java语言程序设计》在传授专业知识、培养学生的综合分析和动手编程能力的基础上,要紧紧围绕坚定学生理想信念,以爱党、爱国、爱社会主义、爱人民、爱集体为主线,推进习近平新时代中国特色社会主义思想进教材进课堂进头脑,培育和践行社会主义核心价值观,加强中华优秀传统文化教育;深入开展宪法法治教育;深化职业理想和职业道德教育。
其次,科学设计课程思政的教学体系,即:进行含有思政元素的教学设计。表现在:梳理课程的教学内容,划分出相关的知识点,深入提炼和挖掘专业知识体系中所蕴含的思想价值和精神内涵,科学合理拓展各知识点的广度、深度和温度,有机地进行融入思政元素,增加课程的知识性、人文性,提升引领性、时代性和开放性。
再次,在课程教学过程中进行教学实施,要在课程教学中把马克思主义立场观点方法的教育与科学精神的培养结合起来,提高学生正确认识问题、分析问题和解决问题的能力。要注重强化学生工程伦理教育,培养学生精益求精的大国工匠精神,激发学生科技报国的家国情怀和使命担当。
最后,在课考核时兼顾专业知识和思政元素的考核点,总评成绩中可包含一定比例的团队合作、小组研究与讨论等等体现思政元素的表现,达到显性教育和隐性教育相结合、润物无声的育人效果。
《Java语言程序设计》是计算机科学与技术、软件工程、软件工程(大数据方向)等IT专业的核心课程,围绕学校“致力于通识教育与专业教育相结合,全面发展和个性发展相结合,培养基础厚、能力强、素质高、具有创新精神的应用型高级专门人才”的学校整体定位,结合工程认证标准和软件工程专业培养高级应用型人才的培养目标、毕业要求,以及建设国家一流本科专业的相关要求,确定《Java语言程序设计》课程的教学目标。
知识目标:奠定扎实的Java语法基础,理解与掌握面向对象的理论、概念、掌握标准类库和第三方类库的类创建对象,模拟现实世界,利用类中的方法解决现实中的问题。对输入输出、网络编程、数据库应用、GUI编程、多线程等各领域的问题,利用面向对象思想来解决。
能力目标:对现实问题进行建模分析,用Java代码实现现实世界中的数值计算、字符串处理、日期处理、异常处理、集合数据处理问题。并遵循软件开发规范,以团队形式开发桌面管理信息系统、GUI游戏、基于C/S模式的网络通信系统等。合理搭建项目结构,进行数据处理、优化代码。
价值塑造与思想引领:关注Java最新发展技术,遵守IT行业的法律法规、软件工程职业道德与实践要求;遵循编程规范,编码时注重安全性,避免黑客攻击,安全使用网络数据;关注学生的心理健康、培养学生工程创新、创业意识,加强团队合作、沟通表达等人文素养。
在课程中的“抽象类与接口”这一节的知识点为例,介绍专业课程思政元素的提炼(挖掘)、使用及评价。
4.1.1 理解抽象类的概念及声明方式、子类的定义。
4.1.2 理解接口的概念及声明方式、实现类的定义。
4.1.3 接口的继承性。
4.1.4 抽象类和单继承性与接口的多实现性。
4.2.1 能定义抽象类、子类;用抽象类、子类创建对象,对象调用方法完成相应功能。
4.2.2 能定义接口及其实现类;用接口、实现类创建对象,对象调用方法完成相应功能。
4.2.3 分析、比较抽象类和接口的区别与联系;能够分析使用抽象类、接口的好处。
4.2.4 利用接口的继承性创建一个接口的子接口。
4.2.5 举例说明抽象类的单继承性、接口的多实现性。
4.2.6 创建类既继承父类、又实现接口。
通过抽象类、接口这2个知识点为切入点,引导及培养学生:
4.3.1 遵守国家法律、法规,学校规章制度。
4.3.2 遵守行业职业道德与实践要求,在编程时讲究实现功能,并且讲究可读性、可维护性,精益求精,培养工匠精神。
4.3.3 既树立远大理想,又要扎实推进;避免空谈。
4.3.4 运用辩证法思考问题:大是大非面前讲规矩、守纪律;可自由裁量范围内讲灵活性、讲个性。
4.4.1 Java中抽象是一个概念,抽象类不能用来创建对象,在里面可以定义抽象方法和非抽象方法。抽象方法只定义方法的声明,而不具体实现,由其子类去实现。提醒学生不要空想,一方面要树立远大理想,另一方面要为了实现理想去脚踏实地地努力奋斗,才能有所收获,有所成就,将来为国家做更大的贡献。
4.4.2 Java的接口也是一个抽象概念。在其中定义的变量默认为常量,方法是抽象方法。它用来定义不同种类的事物之间的共同特征(静态特征和动态行为),可以引申为接口定义了一种不同种类事物之间的标准、规范与约束。对于既定的标准与规则,每一位公民都要遵守。从而引导学生做事先做人,凡事守规矩,在社会、学校、机房要遵守法律、讲诚信。在专业学习中,遵守软件工程开发标准与开发流程、职业道德规范,团队开发时,如果每个成员都遵循规范,可以大大提高开发效率,降低沟通成本。从而培养学生的团队协作精神和沟通交流能力。
4.4.3 接口定义了不同事物之间的约束与规范,其实现类如果定义为非抽象类,则必须具体化其所有的抽象方法。面向接口的编程有很大的灵活性。例如:在数据库编程中,面向接口编程定义了对数据库操作的接口及方法之后,可以由不同的技术去实现,如:JDBC、DBUtils、Spring、MyBatis技术均可实现。由此,可以推及:标准及规范性与灵活性的辩证关系问题,可提升学生的人文精神素养。可引导学生在处理学习、生活等方面的事情时运用唯物辩证法思考问题:a.在大是大非面前讲规矩、讲纪律,坚决拥护社会主义根本制度、坚决支持共产党领导;b.在允许自由裁量范围内讲灵活性。
4.5.1 线上线下混合式:学生线上自学与教师课堂引导相结合。充分利用线上教学资源,合理安排线上学习任务,进行线上自学+编程实践。课前下发《导学任务单》,让学生带着任务去自学,提出自己的疑问。加强自学任务考核,查缺补漏。通过信息化教学平台和实践平台对自学任务进行检测,教师根据反馈情况对学生掌握较弱的知识点再进行补充、强化,因材施教。
线下课堂教学的组织,学生先预习再课堂交流。在课堂上,根据预习的情况与反馈,对于学生的共性疑问,课程的重点、难点,教师加强示范讲解、加强编程辅导。以学生为中心,引导他们主动探索。
以学生为中心,加强小组学习与讨论,加强生生互动。以宿舍为单位组织小组,组员之间互相督促,互帮互助;加强师生互动、生生互动。
4.5.2 理论与实践并重。线上教学部分有丰富的教师示范性、标准性的程序代码呈现。既注意理论传授,又重视能力培养,同时进行价值塑造与思想引领;
4.5.3 案例化教学法。以贴近生活、学生熟悉的领域举例。
抽象类举例以抽象的图形类与三角形类、长方形类、圆类为例,求其周长和面积;在解释接口的概念时,以生活中的插排接口、USB接口为例,浅显易懂;接口举例中以图形接口、实现类为三角形类、长方形类、圆类。
4.5.4 比较法。抽象类及其子类的实现、接口与其实现类完成的功能相同:都可以进行抽象图形与具体图形类的现实模拟,其在代码的实现方式不同点在在线课程中表现得非常突出。
4.6.1 学生能够编写Java程序代码进行抽象类和接口、抽象类子类和接口实现类的定义,用它们生成对象,调用方法,培养学生的专业能力和精益求精的工匠精神。
4.6.2 学生能总结抽象类、接口之间的区别及联系,进行小组交流。
4.6.3 学生学习《软件工程师职业道德规范和实践要求》,小组交流谈体会,写出心得。
本案例通过抽象类和接口为主线,深挖所蕴含的思政元素,实现了知识传授、能力培养的教学目标,引导学生自觉维护社会主义核心价值观,遵纪守法,遵守职业道德和行业规范,运用辩证法思考问题,进行团队交流与合作,有力地推动学生德智体美劳全面发展。
一流课程建设内容包括课程思政建设。以本课程为核心的“软件开发基础类课程思政建设”项目获党总支重点建设项目,在学生培养方面做到守好一段渠,种好责任田。