企业文化与程序设计教学

我们经常探讨如何深化实践教学改革,如何面向企业培养人才。但是具体到课堂上如何去做呢?就是将企业文化引入到课堂中来。本文从中国传统文化和企业文化两个方面探讨在程序设计教学中文化所起的独特作用。

一、  中国传统文化与编程思想的关系

      在西方的思想里面,分析一个结构直到把它分解为不可分割的单位,再加以数量化的研究和表述,是典型的数理分析的套路。在西方科学文化中,不能够精确化和数量化的结构不受重视。而在中国传统的文化里面,不能够精确化和数量化并不是研究的障碍;中国的阴阳思想可以灵活地描述任何的自然物、人造物和人类思想。
     编程的思想和理论有着深厚的中国道家思想渊源;程序设计实际上非常适合中国传统的思考方式。编程之道去如黄鹤来如晨风。道之初,带来了空间和时间,所以,空间和时间是编程的阴阳两极。不懂编程之道的程序员常常把空间和时间消耗殆尽,得道的程序员则总是有足够的空间和时间去完成编程任务。
     在程序设计领域,大到软件构架、编程思想,小到语法细节、编程细节,无不蕴含着朴素的中国道家文化。在程序总体设计、界面设计、程序设计语言的类型、面向对象编程以及设计模式等方面以中国道家思想来培养学生的编程思想,显得丰富、自然而极具感染力。
    武侠小说中,剑客是最令人神往的。那衣飘飘、玉树临风的神采,是多么神秘而美丽。名剑客都有一把好剑,当然还有精妙的剑法,仅仅这些还不够。真正的高手是凌驾于剑法之上的,正所谓“手中无剑,心中有剑”。他们在剑和剑法之外,还有“剑气”。计算机的程序设计领域里,程序员就是“剑客”,开发工具犹如手中的“剑”,算法就好像“剑法”,而编程思想则是成为编程高手的“剑气”。这就是武侠小说中的道家思想,用在程序设计的教与学中是多么贴切。
    程序设计语言和开发工具好比一朝风月,基础知识和编程思想犹如万古长空。不可固守万古长空而不解一朝风月,更不可贪恋一朝风月而昧却万古长空。这和“勿在浮沙筑高台”的中国传统哲理是一致的。

二、  企业文化与程序设计

    单打独斗的软件英雄时代已经一去不复返了。也许已经很难再出现像求伯君、王江民、丁磊这些编程界的传奇人物。现代程序员必须将自己融入开发团队才能适应软件开发的需要。所以,软件企业的模式和文化对于学习程序设计的学上生来说显得尤为重要。可以让他们提前进入角色,为将来作好准备。

1、技术人格

    作为程序员的第一要素就是兴趣,因此激发学生的兴趣和潜能,让他们热爱编程并愿意为之奋斗是必须贯彻始终的教学原则。这时,教师的经验和技术功底显得尤为重要,你必须有实力去宣扬这种程序员文化,去打造学生的个性和技术人格。所谓技术人格,就是一种建立在技术底蕴基础上的个性张扬。简单地说,就是自信。因此在课堂中讲授给学生的不仅仅是教材的知识点,还应该有软件文化和新技术的前瞻。
    有自己的技术人格且又能融入团队的程序员才是企业最需要的程序员。

2、企业规范

    在实例教学和指导学生练习的过程中,坚持编程思想是第一位的,编程的步骤是次要的。而这种思想的培养遵循一条“代码→算法→思想”的成长轨迹,从课堂和课后不断练习的代码中总结一般的算法,进而从算法升华为编程思想。有了编程思想以后我们就可以遵循“思想→算法→代码”的企业编程规范了。在指导学生编程的过程中要求严格按照企业的规范实施,例如规范的命名、正确的程序书写风格、合理而必需的注释等等,哪怕只是一个很小的程序。让学生编制的程序能够从练习→程序→软件,必须有这种习惯,更要有规范的训练方法。实践证明,写出规范的程序比拥有的写程序的技巧更为重要。因为企业需要的是为项目添砖加瓦、容易合作、善于沟通的程序员,而不是一个特立独行的大侠。

3、团队协作

    团队协作精神和意识是企业程序员所必须具备的企业文化。在课堂教学中如何培养这种意识呢?主要有两种方法的训练。
    一是课堂练习中大的项目分组完成,每个小组选出一个项目小组长,由组长对项目进行分工;要求项目必须有分工且合作的辩证组成,必须有简单而基本完善的文档;代码风格要一致且符合企业规范。这种方式培养的是合作方式、沟通技巧和项目管理能力。
    二是接力编程方式。教师将一个课堂练习分成几个独立但又互相联系的模块,请若干同学上来依次接力完成所有模块,每个同学完成后的程序都是可以运行的;这种方式培养的是阅读他人代码和适应别人的能力。因为每个人都有自己的代码风格和算法,但每个人要去适应接力棒的前一个同学的风格和算法,又要照顾接力棒后一个同学的适应能力;而且,每个同学也可以去修改前一个同学错误和不规范的代码。在前思后想中,不知不觉已经功力提升,进入企业编程的境界了。

4、软件工程

    这里的软件工程区别于传统的软件工程的宏大和繁杂,况且在课堂上实施也不太现实。在很多中小企业实施诸如RUP等庞大的软件工程方法遇到阻力时,极限编程方法适时出现了并且迅速的到了推广。
    极限编程方法中有一个准则就是双人编程,在课堂上实施恰到好处。所谓双人编程就是任何一段代码都由两个程序员参与,一个写代码,另一个观察、查资料、参与讨论,然后两个人交换,周而复始。这样任何一段代码都有两个人对其有一样的熟悉程度。在人才流动如此频繁的软件行业,这一点的重要性可想而知。

三、结论

    将企业搬到课堂其实永远是一个不切实际的幻想。退而求其次,我们可以让学生在课堂中随时嗅到企业的味道,触手可及企业的文化和模式。要做到这些,有一个勤奋而拥有企业经验的教师加上一群渴望进入IT企业的学生,足矣。

你可能感兴趣的:(程序设计)