教学实践活动 | 学习还能这么学?
12
12月4日
软件工程专业组织
ThougtWorks工作室
ERP工作室
Web应用开发工作室
联合开展了一场
别开生面的教学实践活动
12
串行 / 并行
1
本次活动打破了以往工作室技术分享及讲座的固有模式,以分小组游戏竞赛的形式帮助学生学习理解“串行与并行”技术。寓教于乐,是一次以学生学习效果为导向的实践活动,是一次OBE教学理念改革的落地。
-曾浩老师-
经过对软件工程专业学生的学习效果调研显示学生们普遍对并行技术的理解与掌握不够深入。对此,软件工程专业曾浩老师设计了一个简单有趣的“翻硬币”游戏来帮助学生们更加深入的理解并行。
规则 / 分组
2
活动开始,曾浩老师带领学生分组,将学生分为四个小组,每组5人,进行翻硬币游戏,共40枚硬币。每组团队需分别进行“串行翻硬币”和“并行翻硬币”游戏,串行翻硬币,每位学生翻完40枚硬币后,全部传递给下一位学生。并行翻硬币,学生每翻完一个硬币就传递给下一位同学,要求每个人都必须翻完这40枚硬币。每轮比赛需要记录各组中每位成员完成翻硬币的时间以及团队完成的总时间。
串行vs并行
游戏过程中,各组的同学积极讨论战术,每组都想出了不同的进行方式。最后,在热烈的气氛下,游戏结束,得到了一组有趣的数据。显而易见的是,并行的团队数据比串行团队数据要快很多,在此过程中,问题也产生了:为什么对于个人来说,并行的速度反而没有串行快呢?
复盘 / 分析
3
曾老师带领大家一起复盘游戏过程并进行数据分析。将游戏过程与学生在《操作系统》《面向对象程序设计(java)》等课程中学过的技术点一一“多线程”进行结合。引导学生们说出,游戏的一次过程就是模拟了一次计算机进程的运行,而游戏中的硬币,就是我们进程中所要用到的资源,同学们则扮演了进程中的各个线程的角色,并行游戏的过程即是多线程并行。
同时,指出每个进程(活动的一次执行)是资源(硬币)分配的最小单元,而一个进程中的所有线程(每位同学)共享进程中的所有资源。并行翻硬币之所以速度最快,是多个线程在并行操作,单个同学操作并行比串行慢的原因则是一一并行资源调度的用时是要大于串行。
-专业知识图解-
活动的最后,曾老师落脚于专业知识,总结了计算机的进程与线程,串行、并行、并发相关的技术特点。本次活动,用简单有趣的游戏帮助了学生们更深入的理解了专业知识,以小组竞赛的形式增强团队协作能力,在开放的氛围中,轻松且愉悦。
-END-
往期精彩
*供稿:李文露 曾浩
*图源:谭吉全
*后台:刘禾 霍垚
*声明:本文系“源代码”品牌工作室原创出品,如需转载,请标明出处:“源代码”品牌工作室。