一句话:报告一门硕士软件工程课程中,学生团队在一学期内开发 Game Boy 优化编译器的经验与课程改进建议。
软件工程学生不仅要学习理论概念,还需在实践中成功应用它们;而软件工程方法和技术通常只对非平凡软件系统才有意义。本文报告了一门硕士层次软件工程项目课程:学生团队在一个学期内为 Game Boy 开发了一个优化编译器。项目中,学生实现了多种语言及相应解析器并统一到公共中间语言,在中间语言上实现优化,并完成了 Game Boy 代码生成器。论文重点呈现教师与学生获得的经验教训,以及可能的课程改进方向。
Software engineering students not only have to learn theoretical concepts but also how to successfully apply them in practice. Hence, projects are an important part of software engineering curricula. As software engineering methods and technologies are only relevant for non-trivial software systems, we report in this paper on a master-level software engineering project course in which a team of students developed a compiler for the Game Boy in a single semester. The students developed different languages and corresponding parsers to a common intermediate language, optimizations on the intermediate language, as well as a code generator for the Game Boy. We particularly present lessons learned by us and the students as well as potential course improvements.
DOI 原文 ·
@inproceedings{paperbot4559,
title = {Developing an optimizing compiler for the game boy as a software engineering project},
author = {Stefan Kögel and Michael Stegmaier and Raffaela Groner and Stefan Götz and Sascha Rechenberger and Matthias Tichy},
booktitle = {ICSE},
year = {2018},
doi = {10.1145/3183377.3183388}
}