技校编程教学的出路


(本文发表在《2007全国新闻出版系统职业教育作秀论文集》印刷工业出版社。2008年1月第一版)
技校编程教学的状况,一个字:难!二个字:失败。哪怕是高级班或者高级、大专两栖班,皆然。有些学校曾经探索软件蓝领的培养,困难重重,个中因素众多,但编程教学的思路出问题是不可回避的原因。
一、一头扎进编程教学的陷阱
许多技校沿用大学早年的老路,为开编程课而开编程课,相对实际点的,开设VB语言课,特别强调编程重要的,开设C语言课。这是一头扎进了编程教学的陷阱。
VB和C都没问题,问题在于一开始就教VB或C,相对于技校学生来说,难度太大。技校编程教学,不需要也不应该走一开始就直接开设VB或C的路子。
衡量一种程序设计语言是否适合教学时,多年来,高校一直把“训练学生规范编程思维”放在考虑的首位。受此影响,技校编程教学自然而然地采用了“直接开设某种程序设计语言课”的路子。正是这种“自然而然”的状态,使技校编程教学几乎没有人寻求、尝试从“不太规范”的编程语言入手。事实上,在技校纷纷开设VB课时,更简单更实用的VBA早就已经悄然问世,但它没能进入技校编程教学决策者们的视野。
“训练学生规范编程思维”无疑是很重要的,但是, 通过易用性、实用性来养护学生学习信心和兴趣,比规范编程思维训练来得更重要更有效,更应该放在考虑的首位。
离开养护学生学习兴趣和信心,讲规范编程思维训练,是一厢情愿,是徒劳无功的。没有兴趣和信心,喝水也难。再说,入门既不成,规范训练又何从谈起?绝大多数教师和学生深感编程教与学之艰难,原因就在此。
更严重的是,把规范编程思维训练列在优先位置,由于它的难度,会反过来打击信心,消蚀兴趣。
反之, 把养护学生学习兴趣和信心放在首位,摈弃对规范训练的奢望和幻想,让信心和兴趣成为动力,既易于学有所成,也使逐步走向越来越规范成为可能。
诚然,VB已经很简单有效了,但是,并不是最简单。如果存在饶有趣味的,并且比VB更简单有效、更易于运用到实际中的编程语言,那么,技校的编程教学,就应该毅然决然地采用它们!
二、技校的编程教学往何处去?
可以说,技校编程教学的主要问题是选择编程语言问题(参见本文第三部分)。
概括上面的讨论,技校选择编程语言的准则或依据就是:
(1)学习和使用过程中较有趣。
(2)容易用得上,易于让学生用来解决他们自己熟悉的、真正需要解决的问题,是最能使程序设计从抽象变得具体的办法。真切地体验实实际际的成功,是最有效的养护信心的途径。
(3)学生从此以后都可以运用这种语言解决实际问题,或者以此为基础,可以很容易地转向其它功能更强大,更规范的语言,不需要转而从头开始重新学习。
应该说, VB符合第(3)点。从VB到VB.NET不需要从头开始重新学习。
并且,与C等语言相比,VB更符合第(2)点。这是选择VB者之所以不选择C的主要依据了。
但是,VB不是最符合第(2)点的,并且VB不符合第(1)点。
与VB相比,VBA、JavaScript或ActionScript都更符合这三点。
三、VBA、JavaScript或ActionScript为何适合技校编程教学?
VBA、JavaScript和ActionScript简单易学、易于实际运用、有肥沃的土壤和广阔的发展后劲,这是它们自身拥有的特点,十分适合作为技术编程教学的开端。
1.VBA
VBA是Word、Excel、PowerPoint、Access等MS Office组件(简称“Office组件”)携带的编程工具。VBA即Visual BASIC for Applications,含义是“为应用程序服务的VB”。
例如,在Word中,用VBA编程来建立满足用户独特需求的功能。在Excel、PowerPoint、Access中,也然。
(1) VBA比VB更简易
VBA是VB的一个子集。如果说VB简单,那么VBA无疑更简单。
(2)VBA可充分利用Office组件作为实践编程需求的沃土
Word、Excel、Access等MS Office组件几乎是每个学生的必修课。学生对它们都比较熟悉,使用机会较多,学生容易从中发现编程解决真实问题的机会。因此,对Office组件的熟悉,无疑是产生编程需求的肥沃土壤。运用VBA,学生可以在Office组件中真刀真枪地开发用户程序,真切地亲身体验成功,要养护信心,这比任何思想教育工或心理辅导有效得多。而在VB中,例子通常是脱离学生经验基础的实际的。可以说,选择VBA就等于选择了一个现成的、免费的、能够源源不为提供程序设计需求的实习环境。这一点是VB无法冀及的。
(3) VBA经济而且高效益
并且VBA在Office组件中是通用的。学习VBA并在更广泛的范围内运用,是十分经济的、高效益的。
(4) VBA有强大后劲
VBA还有另一些优点:开发效率高、支持ActiveX控件、程序国际化。
2.ActionScript
JavaScript是MacroMedia Flash为设计者提供的专门控制Flash动画的编程工具。
(1) ActionScript比VB更简易
事实上,就语法复杂性而言,ActionScript与VB差不多。
然而,由于Flash是创作典型的视角作品的技术,在其中,ActionScript所控制的每一个资源都具体真切的。因此,在Flash中使用ActionScript,学生可以非常直观地体会、理解ActionScript 功能,这使程序设计的抽象性大大降低,对于技校教学来说,等于大大降低了教与学的难度。
(2) ActionScript可充分利用Flash作为实践编程需求的基础
Flash基础上学习和使用ActionScript,也在Office组件上学习和使用VBA一样,可充分利用其宿主Flash作为实践编程需求的沃土。可以得到优良的实习环境,让学生体会实际编程需求并体验成功。由于类似,无需赘述。
(3) ActionScript以巨大的趣味性为后盾
ActionScript是Flash的编程接口,它生长在Flash这片活力十足的土地上。
Flash简单易学易用,趣味性强,易于用来表达思想,Flash作品易于在网上发布,等等,这些特点使Flash受到青少年的追捧。他们为了表达和展现,争相追逐独特的表现手法,这成为他们学习和使用ActionScript的强大动力。
(4) 学习使用ActionScript经济而且高效益
互联网“是个广阔的天地 (并且是自由和便利的),在那里是可以大有作为的”。Flash作品因体积小且技术支持充分而易于在网上发布,Flash作品的需求量巨大。学习和使用ActionScript,增强作品的技术水平,在实际应用中,也是经济、高效益的。
(5) ActionScript有强大后劲
简单易学并不意味着简陋落后。ActionScript 同样拥有先进的编程特性。不仅具有“面向对象编程 (OOP)”能力,而且可以与数据库连接,能够操纵XML,等等。
3.JavaScript
JavaScript是专门为网页描述语言HTML服务的编程工具。
(1)JavaScript是简易的。
Javascript是一种解释性的,基于对象的脚本语言(an interpreted, object-based scripting language)。运用JavaScript并不需要专门的编程环境。JavaScript 程序是纯文本的,直接嵌入到 HTML 文档中。只用记事本就可以开发 JavaScript应用程序。
它的语法复杂程度、学习难度与ActionScript、VBA差不多。
(2)JavaScript同样有肥沃的土壤。
上网已经成为一种大众化的信息技能。尽管直观的网页背后是抽象的HTML代码,但是,网页知识的普及,也能使抽象的HTML代码对于需要学习编程的人来说显得更简明,就像NBA热使更多人对复杂的比赛规则了如指掌一样。
此外,由于Javascript程序在HTML 文档中是以源代码的形式出现的,Javascript代码可以直接拷贝、使用,网上丰富的应用例,都可以成为学习和使用Javascript的资源。原来不懂编程的人,多参考Javascript示例代码,也能很快上手。
(3)技校编程教学选择JavaScript语言同样有其它优点。
JavaScript 同样体现典型的程序设计的多种技术,同样有类似ActionScript、VBA的其它优点,无需赘述。
四、存在问题
主要的存在问题是教材。
尽管有关VBA、JavaScript和ActionScript的出版物、网站文章有如汗牛充栋,但它们都不是以作为学校教材为目的的,缺乏足够的系统性,有关编程思想的内容组织距离编程规范甚远。
尽管前面强调规范应该让位于易学易用,但是这并不意味着教学可以完全不顾规范。在取得简单易学、易于实际运用、有肥沃的土壤和广阔的发展后劲,等等众多优势之后,追求规范,便成为合理的、自然的要求。
因此,建设具备一定规范的教材,是实施本文主张的首要问题。
五、结束语
VBA、ActionScript和JavaScript所依赖的Office组件、Flash和以HTML为中心的互联网应用在技校中是现成的、丰富的资源。放着这些巨大资源不用,舍近求远,舍本逐末,技校编程教学没有出路。反之,这些编程语言不但是技校编程教学的克服困难出路,并且,无论从降低难度、减轻代价的经济角度考虑,还是从追求科学合理、寻求不为改进的技术进步角度考虑,抑或是从教会学生掌握一技之长的社会责任角度考虑,这些都是值得推荐的。

(本文发表在《2007全国新闻出版系统职业教育作秀论文集》印刷工业出版社。2008年1月第一版)
<< 被忽略的Windows Server 2008九大特性
解决主机不能访问虚拟机CentOS中的web站点 >>
跟踪网址
  • 文章地址: http://www.gdps.net/modules/article/view.article.php/c3/1553
  • 跟踪地址: http://www.gdps.net/modules/article/trackback.php/1553
API: RSS | RDF | ATOM
粤ICP备16107741号-1 2000-2016 ALL Rights Reserved 版权所有