面向对象思想对于嵌入式课程体系的重要性大大超出原本被认为的那样。这个环节的课程对于整体课程体系的意义在于:其它阶段虽然使用C语言编码,但都与面向对象技术紧密关联。尤其是在操作系统编程和Linux内核这两个大环节中。在基于操作系统的应用程序设计中,面向对象技术作为主要的中间层接口完成了对于操作系统API的封装。操作系统提供的各种机制的模型透过面向对象的中间层清晰地浮现出来。Linux内核虽然用C语言写就,但面向对象的设计思想随处可见。不深入学习面向对象思想,就无法透彻理解内核的设计思路。深入和广泛地展开本阶段的教学,能够大大提升学员对于软件体系整体设计思路的认识。本阶段所讲授的软件设计思想,是其它各个阶段课程的基本指导思想。
这阶段的前身C++课程曾经是“鸡肋”一般的存在。如果放弃这个阶段,课程的建设者发现学员的简历上只有C语言;如果开设C++课程,又因为该阶段和其它阶段的脱 节(其它阶段用C作为主要语言)导致学员不易掌握。于是就出现了一种很奇怪的状况, 好像应当教C++,但是又不知道教了做什么用。结果是这个阶段的课程在这种摇摆不定的态度中被不断削弱。
课程改革
通过对整个嵌入式软件体系的思考,面向对象思想对嵌入式软件体系的重要意义被发掘出来。随之而来的是整个课程体系的全面改革。本阶段的课程彻底摆脱了传统C++教学模式的束缚,在一个更广阔的空间展开教学实践,编程语言也不再限于C++。本阶段的课程增加了中间层环节用以讲解高层次程序设计模型,并且将面向对象思想投射到其它各个课程环节。
这样做的效果是很明显的:在应用程序层,课程所讲授设计手段由于中间层的加 入变得丰富多彩;在操作系统理论的课程环节,透过中间层讲授的编程框架更加清晰;在操作系统内核环节,面向对象思想能够帮助学员迅速把握内核的设计思路。
展开的新语言课程应该拥有比传统教学模型更为高效的模型。比如在课程体系中引入Javascript语言的设想:传统的JavaScript教学 是以BOM和DOM模型为主要的编程接口。但课程目的不限于此。JavaScript语言应用会涉及服务器、中间层和客户端两个方向。由于统一讲授语言本身,所以语法的教学内容反而会更加精简。
面向对象设计模式
这个环节中讲授的模型具有普遍价值:将全课程序列中涉及到的模式整理出来进行深层次分析。涉及到的模式有:代理模式、策略模式、观察者模式、工厂模式和单例模式等。经典的设计模式理论局限在纯粹的面向对象语言中。而本环节课程突破了这种局限性。课程在不同语言模型下讨论这些设计模式,从而能够深入地学员体会语言差异对设计结果的影响。
中间层技术
这是一个不断发展的课程环节。中间层技术是通往一切应用技术的桥梁,它带给 程序员迅速构建复杂软件系统的能力。中间层拓展了课程广度,这使得学员能够有 更广阔的就业空间。课程序列的挑选原则是只教授那些在工程实践中和设计手段上都具有普遍意义的内容。向应用层拓展课程正确的选择应当是在各个平台都能适用的技术。互联网技术 给设备(及设备间)提供了 统一的编程接口和通信协议。传统的嵌入式 培训只讲socket编程。课程应当从知识的层次 上把网络拓展到应用层协议。
Java和Android
Java本身是一门非常复杂的语言,并且这种复杂性还在不断增加中。在这个阶段 要彻底放弃“全面介绍语法”的课程建设思维。在庞大语法和类库的一个精简子集上进行讲授。中间层有几件事情要讨论:数据结构封装、操作系统封装、内部通信和调用、外部通信和调用。特别要指出:通信技术使已有的软件技术能力倍增,这在工程实践中为工业界看重。这部分应当成为全课程体系的建设重点,而且也是“嵌入式体系”相较其它专门体系的大优点。
Copyright © 2004-2024 华清远见教育科技集团 版权所有
京ICP备16055225号-5,京公海网安备11010802025203号