一句话:推出八款 Unity 游戏 eFish'nSea,将八类软件性能问题的根因与解决方案映射为游戏机制,帮助非编程背景者建立性能意识。
已有研究总结了八种反复出现的软件性能问题及其根因与解决方案。对于没有较强编程背景的人,理解这些概念有助于形成“性能感知”的通用问题解决思维,并为后续相关学习做准备。本文向社区分享一套名为 eFish'nSea 的八款 Unity 游戏,每款游戏对应一种性能问题类型,通过有趣且易于理解的游戏机制传达技术概念,并根据玩家在游戏中的表现反馈其“效率”高低。作者进行了压力测试,并开展了多次实际游戏教学环节,初步结果表明该游戏集在实现上述目标方面具有良好前景。
Prior research has revealed eight recurring types of software performance issues, their root causes, and resolutions. People who do not have a strong programming background may benefit from learning about these concepts to form “performance-aware” thinking in general problem-solving and also prepare them for future studies in related fields. This paper intends to share a set of eight Unity games, named eFish 'nSea, with the community to generate broader impacts. Each game maps to one of the eight performance issue types, conveying the technical concepts through fun and easy-to-capture game mechanisms, and providing feedback to players regarding how “efficient” they played the games. The authors have conducted stress testing and delivered several practical sessions of the games, showing great promise in the indicated intention.
@inproceedings{QuinlanMTMX24,
title = {eFish'nSea: Unity Game Set for Learning Software Performance Issues Root Causes and Resolutions},
author = {Andrew Quinlan and Ryan Mercadante and Vincent Tufo and Jonathan Morrone and Lu Xiao},
booktitle = {ICSE},
year = {2024},
doi = {10.1145/3639474.3640066}
}