最近接触到两个实习生的事,写一些看法。
排名比较靠前名校的学生A:基础知识好一些,但对于目前常用的语言和软件的系统知道的甚少,通过了解,发现课程都是计算机系的常见课程,上机都是使用Turbo C之类的软件,对于目前主流的开发工具、B/S软件等所知甚少
普通的学校的学生B:基础知识还算可以,基本课程都差不多,但学习课程增加了很少实战的内容,比如JAVA的使用,并提供一个虚拟的项目让学生完成一个比较复杂的B/S项目,过程中使用一些开源的框架等
通过实习项目开发发现,对A需要讲解很多的现代软件的开发基础概念,而实习时间一般也就1~2月的时间,因此估计这些知识还没有搞明白就结束的,在这个过程中对于企业中的软件开发的一些规范,如代码规范、配置管理、系统架构等等方面根本没有时间学习和了解,如果安排一个实际的小的真实项目估计无法完成;而B由于具有JAVA .net类的基础,因此对于以上的这些企业中的软件方法能够有一定的了解和学习,因此对于以后再实际的工作中有一定的指导意义。
通过这个过程,我就想,可能我接触的是个别的学生的差别,但目前我们的大学教育对于计算机的教育看来和企业的实际需求差距还是挺大的,基础知识的教学是必须的,但通过对于现代的软件的开发等内容是否教的太少了,举个简单的例子,很多的大学里有C++课程,但很多学完了以后,除了知道了面向对象的概念外,对于C++的实际使用的知识知道的甚少,如C++的标注库等等,有的学生还没有听说过(诧异...)
我们的现在的很多中小企业,需要的是能够比较快的投入使用的人员,比较JAVA的Web开发,如果一个同学以前这方面啥都不了解的话,那么如果一个这样的人员从招入到培训和实际产出一些工作量,那时间是相当的长,因此这两年也经常看到对于应届毕业生的应聘好多不符合企业的需求,有很多的同学进入了达内等等这些培训学校,在实际培训半年到一年的时间进行继续教育。
因此希望我们的好的学校以后的教学中也可以吸取那些普通的学校的做法,对于学生的实际技能在4年中能够给予一定的培养,不要让学生上个4年半或5年的学(加上培训)。
以上可能是个例,可能会有偏颇的地方。