刘晓峥
【摘 要】本文是基于信息化技术的一次教学单元的设计,分别从课程介绍、教学分析、教学过程、考核与评价、特色与创新五个方面进行了具体详细的阐述。
【关键词】面向对象;封装;教学设计;教学目标;教学方法;信息化手段
1 课程介绍
首先介绍本次课程的背景、主题、课时、先行后续章节,明确课程地位。
1)图文结合,以手机为例阐述封装概念: 隐藏对象的属性和实现细节,仅对外公开接口,控制在程序中属性的读取和修改的访问级别。
2)本课主题是面向对象之封装,属于Java程序设计课程中的一个章节,开设专业为计算机软件专业,安排课时为2课时理论课。
3)本课时的先行章节有Java相关知识与运行环境搭建;Java基础语法与流程控制;面向对象初探——类和对象。后续章节有面向对象核心思想之继承与多态以及面向对象之接口。
2 教学分析
2.1 教学设计思路
教学内容不仅仅包括教材内容的综合,还包括教学目标的确定、教学方法的设计、信息化手段的支撑。我的设计思路如下:首先,进行市场调研,根据职业现状,确定专业岗位,制定人才培养方案,这是我们进行教学内容设计的重要依据;归纳岗位中的典型任务,提出相应的专业能力要求,通过细化分析,确定教学目标;根据学情调查和课程标准,进行教学设计;利用多种信息化手段,实行课堂教学实施;完成教学后,再进行评价反馈和完善。
2.2 教学目标
本课的知识目标包括:什么是封装;为什么要封装;怎样实现封装。其中怎样实现封装既是本课的重点,也是难点。本课的能力目标要求学生体会面向对象程序设计思想,编写模块化程序。
2.3 学情分析
本课程面向计算机软件专业大一下学期的学生,高职学生的学习特点可以总结如下:他们的专业学习热情尚处于培育期,要求养成课前预习的习惯;他们初具编程能力,喜欢模拟真实的工程项目;对动手操作有热情,借此强化实践,提高兴趣;理论知识方面欠佳,需要理论和实践结合的教学。
2.4 教学策略
基于以上情况,确定了以学生为中心,项目导向型的教学策略。教学以项目为载体进行,具体的工作项目与任务使教学目标一目了然,比起传统章节式教学,更能引发高职学生的学习热情。信息化支撑的手段包括网站、软件平台、多媒体课件、试题库与多种与学生交互方式。
3 教学过程
教学过程包括课前探索、课堂实践和课后拓展。其中90分钟的课堂安排如下:问题讨论(15分钟)、理论介绍(25分钟)、项目规划(5分钟)、项目实施(40分钟)、总结与讨论(15分钟)。
1)课前探索:预习、思考、讨论
提前布置预习任务,学生通过课本预习,初步了解面向对象特性。了解对象所具有的属性与行为。让学生试体会在程序中如何通过代码来设置或执行属性和行为。
总结问题如下:如何理解属性和行为的权限;为什么说直接向属性赋值是不良的编程习惯,正确的方式又该是怎样的;如何理解对象所能执行的行为。
2)课堂实践
理论介绍:本课内容属于教材的项目五——学生基本信息管理中的一个任务。通过面向对象程序设计,实现对学生基本信息的统计与显示。其中运用到的封装知识点用来构造学生对象。
问题讨论:通过举例说明、现场编程解答学生提出的问题。
问题1:如何理解属性和行为的权限。
通过对封装概念的介绍,学生对权限的定义有了初步了解。然后讲解具体的权限定义关键字:private、public、protected、friendly,每个关键字所能修饰的元素以及具体的范围如何理解。此时也运用到了上次课所讲过的继承相关知识。再通过现场编程,让学生实际了解权限定义。
问题2:为什么说直接向属性赋值是不良的编程习惯,正确的方式又该是怎样的。
属性是类的核心,而程序模块面向用户,属性应该属于内部结构,比如手机的内部电路。如果直接向属性赋值,则相当于对程序内部结构的破坏,所以说是不良的编程习惯。正确的方式是使用getter/setter方式对属性进行封装,提供接口以便于进一步操作。
问题3:如何理解对象所能执行的行为。
对象能执行的行为包括预定义方法和自定义方法。其中预定义方法需要从API引入,则涉及到包的组织、继承、封装等综合性知识。
最后通过互联网等知识平台,补充封装在现实软件设计中所起到的作用。
项目规划:理论知识介绍完毕之后,进行具体的项目规划,首先引导学生进行项目分析,明确项目内容,细化项目任务,要求学生自主完成项目结构与流程图(可通过互联网与教学资源网获取参考资料)。
项目实施:根据项目结构图,以教师为主导,完成本课时的任务模块——实现访问控制。本任务将在上次课的基础上,重新定义学生类,对学生及其不同成员定义不同的访问权限,并封装学生个人的基本信息。另外,在实践的过程中,教师提出问题:实例变量和类变量,实例方法和类方法之间的区别和联系?引导学生思考,并回答问题。
总结与讨论:教师对本课时的知识点作逐一回顾,再次强化重难点——为什么要封装,如何实现封装。学生通过本课时学习,应掌握以上知识点并作答。学生需要完成的配套训练,将在相应2课时的上机课时中完成。教师布置上机项目,学生通过课后设计、编写,上机调试,进一步熟练掌握知识点的实际编程运用。
3)课后拓展
教师为学生提供了多种教学资源与教学场所,学生需通过动手编程、设计项目来巩固本课所学知识点,为上机课做好准备。
4)考核与评价
本课程考核分为三部分:理论掌握度50%+项目分析与规划能力30%+项目实施能力20%。
5)特色与创新
本课程以职业能力培养为目标,实现了教做学评为一体,以工作过程为指导,实施项目有应用价值,提供丰富的教学资源,构建多元化评价体系。
课程的改革思路如下:
(1)强化工学结合的教学理念,加强项目的实用度建设。
(2)建设精品课程与教学网站,打造优良的师资团队。
(3)建立基于企业项目开发的学生技能实践达标的在线考核平台,实时反馈学生学习程度。
4 结束语
计算机专业具有技术性强、知识更新快、就业分散的特点。高职院校重点是培养职业人才,其教学应与一般本科院校有所区别。就计算机教学而言,应该具有独特的职业计算机教学特色,要提高自身竞争能力,要求学生适应能力强,有创新精神,逐步提高职业素养,培养较强的实际动手能力。除了掌握基础的计算机理论知识外,更重要的应具有勤奋踏实、吃苦耐劳的精神,高职院校的计算机专业在进行人才培养中应结合市场需求和岗位需要,积极探索实践教学新途径,建立完整的一体化的实践教学体系。以“精理论、重能力、多实践、求创新”的办学理论为指导思想。重视实践和应用,促进学生专业素养的提升。教学过程中,重在培养学生的编程思想,提高动手能力,理论课教学之中要随时注意这一点。
【参考文献】
[1]薛贵军.Java语言程序设计教程{M].华南理工大学出版社,2014,7.
[2]钱银中.Java程序设计[M].清华大学出版社,2009,10.
[责任编辑:杨玉洁]