Key points are not available for this paper at this time.
プログラミングの問題は、多様な機能的に正しい方法で解決可能ですが、これらの解決策の質(例えば、可読性、保守性)は大きく異なることがあります。コードの質が低い場合、特定の否定的特性(例えば、重複コード)として「コードスメル」と呼ばれる症状が現れ、リファクタリングパターンを適用することで解決できます。多くの学部のコンピューティングカリキュラムは、このソフトウェアエンジニアリングの実践を学生に訓練していますが、しばしば指導者提供の不慣れなコードに基づいた演習を通じて行われます。しかし、私たちの観察では、これが初心者がリファクタリングを自分自身の開発実践の一部として内面化するのを難しくしています。本論文では、学生がまずコードスメルを生成することを保証する制約のあるプログラミング演習を完了する必要がある新しいリファクタリング教育アプローチを提案します。このシンプルな介入は、学生がコードに精通している場合(それを構築している)、リファクタリングが彼らの通常の開発実践に近づくこと、そして「誤り」から学ぶ強力な機会を提供するというアイデアに基づいています。私たちは、35人の初心者学部生を対象に研究を設計・実施し、学生が従来のアプローチと私たちの「誤りに基づいた」アプローチを使って様々なリファクタリング演習を交互に行う中で、後者を使った方が顕著に効果的かつ自信を持って演習を完了できたことを発見しました。
Tan et al. (2024) はこの問題を研究しました。