Key points are not available for this paper at this time.
入门级编程课程正在快速增长,目前招收数百或数千名学生。在这样的大型课程中,教师理解全班的解决问题模式或问题可能非常困难,而这对于改善教学和解决重要的教学挑战至关重要。在本文中,我们提出了一种技术和系统,CFlow,用于创建可理解和可导航的代码表示。CFlow能够以类似单个代码样本的可视化形式表示成千上万的代码样本。CFlow通过(1)聚类具有相似语义目的的独立语句,(2)以保持语句之间语义关系的方式呈现聚类语句,(3)将不同变体的正确性表示为直方图,以及(4)允许用户通过语义过滤器交互式地导航解决方案,从而创建可扩展的代码表示。通过多层次视图设计,用户可以导航高层模式和低层实现。这与以前的工具形成对比,后者要么将重点限制在孤立的语句上(因此忽略了这些语句的周围上下文),要么聚类整个代码样本(这可能导致大量的聚类——例如,如果有n个代码特征和每个特征的m个实现,则可能有mn个聚类)。我们通过比较研究评估了CFlow的有效性,发现使用CFlow的参与者在识别错误时只花费了一半的时间,并且从超过6,000个提交中回忆出两倍的期望模式。
Zhang等(2024)研究了这个问题。
Synapse has enriched 5 closely related papers on similar clinical questions. Consider them for comparative context: