经验和教训
还是那句话:“磨刀不误砍柴功“,这句话用于总结本次团队作业再好不过。由于临近考试周,学习的重心开始转向考试科目的复习上,使得本次大作业没有花更多的时间去操心了。特别是团队会议只举行了一次,这使得我们的团队在没有更好的撮合之前就去试图实现如此复杂庞大的工程,非常多的接口定义、命名规则(规则不是规范,关于规范还是有很好的协商的)、冲突解决等问题上无法有效解决,团队沟通出现了非常严重的问题,这也是我这次大作业遇到的最大困难的罪魁祸首。关于这个问题,在听取了@thousfeet学姐的经验和指导后,我认为在团队开工前应当要做好完全的准备,分工一定要明确,设计文档一定要反复推敲并且让整个团队的所有成员全部了解后才能保证每个人明确自己该做的事和怎么做这件事,才不会使整个团队的沟通陷入瘫痪。
课程总结
转眼间,大一快乐时间就到头了,C++课程也顺利结课了。对于实验班的博客作业,说真的让我学到了非常多的干货,也做了非常多的人生第一次:第一次接触GitHub、第一次编写工程、第一次写技术博客等等。特别是这门课程的特点:只有下限没有上限、没有限制自由发挥,非常符合我这理科肥宅的胃口,遇到问题自主解决,老师和助教学长学姐也能提供帮助和指导,在实践中学习,不仅让我觉得学习是一件非常有用和有趣的事,也能学到很多有趣的操作。
打个比方,在大作业开始前,我早对OPP面向对象的特性、继承、多态等理论有一定的了解,但是仍然十分抽象。通过大作业的学习,在实现中逐渐掌握了它们的真正作用,寓教于乐,我觉得这才是学习编程语言这门实践课程该有的样子。
编程语言是一门工具而不单单是一门学问,工具就应该在实践中发挥它应有的作用,给你一把扳手却只教你扳手的结构和扳手的作用,不去实地使用它永远只能抽象的理解而不会真正的使用它。实验班C++课程不仅让我学会C++这门语言,更多的是教会了我如何去学习一门编程语言,甚至是一门学问。
对于课程的建议的话,我觉得网络课程和课堂知识还是要有一定的统一,否则会劝退很多萌新。然后就是这几次作业的缺点:让同学们对工程的理解还不够深刻,很多时候我们只为了完成作业去完成它,却很少人对为什么这么设置问题、编程应该注意什么现实问题等没有思考,也就是:作业没有官方总结,也没有课后提问后的答疑和对一些优秀回答的公布等更进一步的深入。我觉得这些改进能帮助萌新理解,并恢复他们的自信心。(没错说的就是我这种又弱又好欺负的萌新)。
很感谢栋哥一整个学期为我们能学到更多而操心,也希望这门课的特色能坚持下去。