论文部分内容阅读
摘要:针对目前高职软件专业的课程存在的缺陷,对面向对象课程进行改革设计,将相关的面向对象内容由浅入深进行模块化设计;遵循实践——理论——实践的认识规律,采用工作任务引领,打破课程界限,将相关理论知识和实践技能训练溶合;打破学期界限,实现学习的持续性;在课程实施中贯穿职业素质的教育,有效地培养学生的职业能力和素质。
关键词: 软件开发;面向对象;课程设计;工作任务
中图分类号:TP393文献标识码:A文章编号:1009-3044(2009)33-9359-02
Project Lead, Theory and Practice, Promote Students’ Cognition
WANG Li-qun
(Nanjing Institute of Railway Technology, Nanjing 210015, China)
Abstract: Aiming at the specialty in higher vocational software defects of course, course reform of object-oriented design, will compile related object-oriented content for modular design, Follow the practice: practice cognition theory, using task, break the related curriculum boundaries theoretical knowledge and practical skills training together, Break term limits, continuous learning, In the course of implementation of education, professional quality effectively the cultivation of students’ professional ability and quality.
Key words: software development; object-oriented; curriculum project; work task
隨着软件业的不断发展,软件企业在控制成本、提高开发效率、缩短开发周期方面的竞争更加激烈。开发的软件系统的复杂度和需求的变更性不断增加,软件开发的过程和方法也更加规范。这就要求软件开发人员能够应用面向对象思想开发出具有可扩展性的、可维护性的和可复用性的软件系统,同时还必须具备系统设计能力。美国软件技术人员Martin Fowler在名为“The New Methodology”论文中写道“软件开发的全部过程都属于设计,制造阶段仅仅指编译和联接过程”。另外Martin Fowler还主张“源代码才是真正的设计书。直到编程作业都应算做设计阶段”。这揭示了这样一个现象,即相同的系统设计都可能使最终实现的系统不相同。这就要求即使是代码的编写人员除了能阅读系统设计外还需要参与系统设计。由此可见,面向对象设计技术的掌握和设计已经是软件开发人员的必备知识与技能,也是高职院校软件技术学生需要培养的关键职业能力。
面向对象思想的重要性在很多高职院校的软件专业都达到共识,因此均开设了相关的课程《程序设计》、《面向对象设计》等。但教学效果不尽人意,学生常常把学会一门语言和学会用这门语言进行设计混淆起来,通过学习后仍然无法真正领悟到面向对象的概念与思想,无法真正理解面向对象设计技术。也就很难达到企业所要求的面向对象技术的设计能力。究其原因,笔者认为主要是课程的设计还是注重各门课程系统性和完整性的“学科本位”的课程体系,课程之间相互脱节,各自为政,割裂了各课程之间的联系,很难培养出学生的综合运用有关知识的能力,存在偏重理论现象;脱离项目的需要引入概念与理论,使学生不知道学习的理论究竟有何用处,造成学习兴趣不高,学了就忘的现象;授课安排上采取齐头并进的方式,造成前导课程内容没学完,后继课程内容无法真正理解。
如何跳出“学科本位”的束缚,科学合理地设计该课程是新形式下对高职软件技术教育工作者提出的挑战。因此,笔者在有关职业教育理论的指导下,对《面向对象设计技术》进行如下改革设计:
1 以必需够用为原则,筛选教学内容
首先立足职业岗位需求,通过对面向对象技术设计这一关键职业能力的分析,筛选出所需要的理论知识有:UML知识、建模工具的使用、面向对象知识与面向对象设计模式、数据库范式,通过项目实训课程培养学生的编程设计技能,同时着眼学生的未来发展,还要培养学生的创新意识、自主学习能力、以及与人合作的等态度。在软件技术与社会需求不断变化的形势下,能有“随需应变”的能力。
2 以促进学生认知为目的,以项目任务为驱动,按实践—理论—实践的顺序设置综合化课程
如何让学习者能接受所教的知识,培养出相应技能和态度,就需要我们去研究学生的认知特点,合理组织有关教学内容,促进学生的认知的获得。美国著名教育家梅里尔归纳了五项首要原理:(1)当学习者介入解决实际问题时,才能够促进学习;(2)当激活已有知识并将它作为新知识的基础时,才能够促进学习;(3)当新知识展示给学习者时,才能够促进学习;(4)当学习者应用新知识时,才能够促进学习;(5)当新知识与学习者的生活世界融为一体时,才能够促进学习。梅里尔也称之为“五星教学标准”。 在这一理论给我们的启示是,应该把理论知识和实践进行融合,打破课程本身的系统性和完整性,加强各门课程的联系,把相关知识进行整合,按照情境学习理论的观点,只有在实际情境中学生才可能获得真正的职业能力,并获得理论认知水平的发展。因此本课程打破纯粹讲述理论知识的教学方式,实施项目教学以改变学与教的行为。让学习者在完成具体项目的过程中学会完成相应工作任务,构建相关理论知识,激发学生的学习兴趣,发展职业能力。
具体做法如下:
将一系列相关的面向对象知识与技能,划分为三个学习步骤。首先,将JAVA的基础、创建数据库对象与数据操作的SQL语句应用、JDBC放在前导课程《JAVA桌面开发》中,《JAVA桌面开发》设置为本门课程的前导课程;其次,在《JAVA桌面开发》的基础上,进一步通过工作任务引领,理解相关的面向对象思想,将UML知识、建模工具的使用、面向对象知识与面向对象设计模式、数据库范式按照任务需求进行了有机整合,形成本门课程《面向对象设计》,实现从实践到理论的第一次飞跃;最后通过开设《基于桌面的项目开发》作为本门课程的后续课程,实现从理论到实践的二次飞跃。
在《JAVA桌面开发》课程中加大代码量的训练,通过实践获得面向对象的初步认识,同时增加学生的代码经验;在本门课程中,按照任务需求对过去出现在不同课程中的知识进行了整合,在这过程中,避免了相关知识衔接不紧,造成学生学习时的遗忘;避免为了学习工具而学习工具,造成学习时的枯燥无味。所有这些知识内容都是以工作任务为主线有机地串在一起,同时,针对重点知识与难点知识,采取在各工作任务中再现的方式进行反复刺激,以达到巩固与深化的目的;在《基于桌面的项目开发》该课程中,主要是通过阅读系统需求文档、概要文档和详细文档,完成数据库文档和测试用例文档,并以小组形式完成实际项目的开发。使学生在学习了知识与技能之后,通过开发项目达到巩固知识、提高技能的目的,并通过开发项目积累开发经验。
以上课程均遵循实践到理论,再从理论到实践这一认识规律。采用以工作任务引领型的项目学习方式,在任务实施过程中,创设问题情境,引出解决问题的方案。立足于通过实践理解理论、应用理论指导实践,以提出问题与解决问题的能力培养作为重点。并将学生的创新活动渗透到工作任务之中。
3 按照职业能力形成的顺序,打破学期界限,形成模块化的课程教学
德国心理学家艾宾浩斯(H.Ebbinghaus)研究发现,遗忘在学习之后立即开始,而且遗忘的进程并不是均匀的。最初遗忘速度很快,以后逐渐缓慢。他认为“保持和遗忘是时间的函数”,并根据他的实验结果绘成描述遗忘进程的曲线,即著名的艾宾浩斯记忆遗忘曲线。因此在知识习得的最初阶段及时的巩固与复习,可以减缓记忆的衰减,保持记忆的牢固度。基于这一理论的指导,我们打破了学期的界限,采取了集中的模块化的强化教学,理论课和项目训练课先后紧连,保证了学习的持续性,促进学生的理解记忆。改变了以往课程分散在几学期,前学后忘的现象。
《JAVA桌面开发》、《面向对象设计》和《基于桌面的项目开发》放在同一学期,前导课程结束(前八周),就立即开始本课程(后八周),最后兩周进行《基于桌面的项目开发》课程,主要是阅读理解软件开发文档,完成相应的文档工作,利用假期完成项目的开发。
4 用隐形课程,体验式教育,培养职业素质
软件技术人员必须具备相应的职业素质,要具有良好的职业道德和敬业精神,仅靠职业道德等课程的简单 说教收效甚微。只有在项目实训中去体验,才能有真正的感悟。因此本课程的实施中,还融合了职业素养隐形课程,如通过老师和企业技术人员的言传身教,让学生在专业学习中体会到刻苦钻研、求真创新的精神,和耐心细致的工作作风,并养成规范的代码编写习惯。在学生的项目开发的实践中,为学生创设企业仿真开发环境,让学生养成吃苦耐劳、踏实肯干的工作作风,在小组的分工协作开发中,培养学生的语言沟通和与人协作能力、自主学习和创新能力。同时在实验室和教室中用标语去激励强化。在考核中注重对职业素养的考核。通过以上一些手段,不仅让学生提高认识,更让学生有意识的锻炼培养良好的职业素养,使学生不仅在职业能力方面,也在心理和行为习惯上与职业岗位零距离适应。
立足市场需求,不断紧跟新技术,对岗位的职业能力进行分析,筛选出相应的教学内容,科学地组织和实施课程内容,促进学生的认知和掌握,有效地培养学生的职业能力和职业素养,这需要我们职业教育工作者不断努力的研究和探索。
参考文献:
[1] 顾明远.教育大辞典(增订合卷本)[M].上海:上海教育出版社,1998-8.
[2] 施良方.课程理论:课程的基础、原理与问题[M].北京:教育科学出版社,1996.
[3] 沈勤.高等职业技术教育概念界说[J].上海职教,1993(12).
关键词: 软件开发;面向对象;课程设计;工作任务
中图分类号:TP393文献标识码:A文章编号:1009-3044(2009)33-9359-02
Project Lead, Theory and Practice, Promote Students’ Cognition
WANG Li-qun
(Nanjing Institute of Railway Technology, Nanjing 210015, China)
Abstract: Aiming at the specialty in higher vocational software defects of course, course reform of object-oriented design, will compile related object-oriented content for modular design, Follow the practice: practice cognition theory, using task, break the related curriculum boundaries theoretical knowledge and practical skills training together, Break term limits, continuous learning, In the course of implementation of education, professional quality effectively the cultivation of students’ professional ability and quality.
Key words: software development; object-oriented; curriculum project; work task
隨着软件业的不断发展,软件企业在控制成本、提高开发效率、缩短开发周期方面的竞争更加激烈。开发的软件系统的复杂度和需求的变更性不断增加,软件开发的过程和方法也更加规范。这就要求软件开发人员能够应用面向对象思想开发出具有可扩展性的、可维护性的和可复用性的软件系统,同时还必须具备系统设计能力。美国软件技术人员Martin Fowler在名为“The New Methodology”论文中写道“软件开发的全部过程都属于设计,制造阶段仅仅指编译和联接过程”。另外Martin Fowler还主张“源代码才是真正的设计书。直到编程作业都应算做设计阶段”。这揭示了这样一个现象,即相同的系统设计都可能使最终实现的系统不相同。这就要求即使是代码的编写人员除了能阅读系统设计外还需要参与系统设计。由此可见,面向对象设计技术的掌握和设计已经是软件开发人员的必备知识与技能,也是高职院校软件技术学生需要培养的关键职业能力。
面向对象思想的重要性在很多高职院校的软件专业都达到共识,因此均开设了相关的课程《程序设计》、《面向对象设计》等。但教学效果不尽人意,学生常常把学会一门语言和学会用这门语言进行设计混淆起来,通过学习后仍然无法真正领悟到面向对象的概念与思想,无法真正理解面向对象设计技术。也就很难达到企业所要求的面向对象技术的设计能力。究其原因,笔者认为主要是课程的设计还是注重各门课程系统性和完整性的“学科本位”的课程体系,课程之间相互脱节,各自为政,割裂了各课程之间的联系,很难培养出学生的综合运用有关知识的能力,存在偏重理论现象;脱离项目的需要引入概念与理论,使学生不知道学习的理论究竟有何用处,造成学习兴趣不高,学了就忘的现象;授课安排上采取齐头并进的方式,造成前导课程内容没学完,后继课程内容无法真正理解。
如何跳出“学科本位”的束缚,科学合理地设计该课程是新形式下对高职软件技术教育工作者提出的挑战。因此,笔者在有关职业教育理论的指导下,对《面向对象设计技术》进行如下改革设计:
1 以必需够用为原则,筛选教学内容
首先立足职业岗位需求,通过对面向对象技术设计这一关键职业能力的分析,筛选出所需要的理论知识有:UML知识、建模工具的使用、面向对象知识与面向对象设计模式、数据库范式,通过项目实训课程培养学生的编程设计技能,同时着眼学生的未来发展,还要培养学生的创新意识、自主学习能力、以及与人合作的等态度。在软件技术与社会需求不断变化的形势下,能有“随需应变”的能力。
2 以促进学生认知为目的,以项目任务为驱动,按实践—理论—实践的顺序设置综合化课程
如何让学习者能接受所教的知识,培养出相应技能和态度,就需要我们去研究学生的认知特点,合理组织有关教学内容,促进学生的认知的获得。美国著名教育家梅里尔归纳了五项首要原理:(1)当学习者介入解决实际问题时,才能够促进学习;(2)当激活已有知识并将它作为新知识的基础时,才能够促进学习;(3)当新知识展示给学习者时,才能够促进学习;(4)当学习者应用新知识时,才能够促进学习;(5)当新知识与学习者的生活世界融为一体时,才能够促进学习。梅里尔也称之为“五星教学标准”。 在这一理论给我们的启示是,应该把理论知识和实践进行融合,打破课程本身的系统性和完整性,加强各门课程的联系,把相关知识进行整合,按照情境学习理论的观点,只有在实际情境中学生才可能获得真正的职业能力,并获得理论认知水平的发展。因此本课程打破纯粹讲述理论知识的教学方式,实施项目教学以改变学与教的行为。让学习者在完成具体项目的过程中学会完成相应工作任务,构建相关理论知识,激发学生的学习兴趣,发展职业能力。
具体做法如下:
将一系列相关的面向对象知识与技能,划分为三个学习步骤。首先,将JAVA的基础、创建数据库对象与数据操作的SQL语句应用、JDBC放在前导课程《JAVA桌面开发》中,《JAVA桌面开发》设置为本门课程的前导课程;其次,在《JAVA桌面开发》的基础上,进一步通过工作任务引领,理解相关的面向对象思想,将UML知识、建模工具的使用、面向对象知识与面向对象设计模式、数据库范式按照任务需求进行了有机整合,形成本门课程《面向对象设计》,实现从实践到理论的第一次飞跃;最后通过开设《基于桌面的项目开发》作为本门课程的后续课程,实现从理论到实践的二次飞跃。
在《JAVA桌面开发》课程中加大代码量的训练,通过实践获得面向对象的初步认识,同时增加学生的代码经验;在本门课程中,按照任务需求对过去出现在不同课程中的知识进行了整合,在这过程中,避免了相关知识衔接不紧,造成学生学习时的遗忘;避免为了学习工具而学习工具,造成学习时的枯燥无味。所有这些知识内容都是以工作任务为主线有机地串在一起,同时,针对重点知识与难点知识,采取在各工作任务中再现的方式进行反复刺激,以达到巩固与深化的目的;在《基于桌面的项目开发》该课程中,主要是通过阅读系统需求文档、概要文档和详细文档,完成数据库文档和测试用例文档,并以小组形式完成实际项目的开发。使学生在学习了知识与技能之后,通过开发项目达到巩固知识、提高技能的目的,并通过开发项目积累开发经验。
以上课程均遵循实践到理论,再从理论到实践这一认识规律。采用以工作任务引领型的项目学习方式,在任务实施过程中,创设问题情境,引出解决问题的方案。立足于通过实践理解理论、应用理论指导实践,以提出问题与解决问题的能力培养作为重点。并将学生的创新活动渗透到工作任务之中。
3 按照职业能力形成的顺序,打破学期界限,形成模块化的课程教学
德国心理学家艾宾浩斯(H.Ebbinghaus)研究发现,遗忘在学习之后立即开始,而且遗忘的进程并不是均匀的。最初遗忘速度很快,以后逐渐缓慢。他认为“保持和遗忘是时间的函数”,并根据他的实验结果绘成描述遗忘进程的曲线,即著名的艾宾浩斯记忆遗忘曲线。因此在知识习得的最初阶段及时的巩固与复习,可以减缓记忆的衰减,保持记忆的牢固度。基于这一理论的指导,我们打破了学期的界限,采取了集中的模块化的强化教学,理论课和项目训练课先后紧连,保证了学习的持续性,促进学生的理解记忆。改变了以往课程分散在几学期,前学后忘的现象。
《JAVA桌面开发》、《面向对象设计》和《基于桌面的项目开发》放在同一学期,前导课程结束(前八周),就立即开始本课程(后八周),最后兩周进行《基于桌面的项目开发》课程,主要是阅读理解软件开发文档,完成相应的文档工作,利用假期完成项目的开发。
4 用隐形课程,体验式教育,培养职业素质
软件技术人员必须具备相应的职业素质,要具有良好的职业道德和敬业精神,仅靠职业道德等课程的简单 说教收效甚微。只有在项目实训中去体验,才能有真正的感悟。因此本课程的实施中,还融合了职业素养隐形课程,如通过老师和企业技术人员的言传身教,让学生在专业学习中体会到刻苦钻研、求真创新的精神,和耐心细致的工作作风,并养成规范的代码编写习惯。在学生的项目开发的实践中,为学生创设企业仿真开发环境,让学生养成吃苦耐劳、踏实肯干的工作作风,在小组的分工协作开发中,培养学生的语言沟通和与人协作能力、自主学习和创新能力。同时在实验室和教室中用标语去激励强化。在考核中注重对职业素养的考核。通过以上一些手段,不仅让学生提高认识,更让学生有意识的锻炼培养良好的职业素养,使学生不仅在职业能力方面,也在心理和行为习惯上与职业岗位零距离适应。
立足市场需求,不断紧跟新技术,对岗位的职业能力进行分析,筛选出相应的教学内容,科学地组织和实施课程内容,促进学生的认知和掌握,有效地培养学生的职业能力和职业素养,这需要我们职业教育工作者不断努力的研究和探索。
参考文献:
[1] 顾明远.教育大辞典(增订合卷本)[M].上海:上海教育出版社,1998-8.
[2] 施良方.课程理论:课程的基础、原理与问题[M].北京:教育科学出版社,1996.
[3] 沈勤.高等职业技术教育概念界说[J].上海职教,1993(12).