遇见数据集

Mining for Framework Instantiation Pattern Interplays

收藏
Zenodo2024-03-29 更新2026-05-26 收录
官方服务:

资源简介:

Software frameworks define generic application blueprints which can be instantiated into an application through application-specific instantiation actions such as overriding a method or providing an object that implements an interface. In case the framework’s documentation falls short, developers may use other instantiations of the same framework as a guide to the required instantiation actions. In this paper, we propose an automated approach to mining framework instantiation patterns from existing open-source instantiations. The approach leverages a graph-based representation to capture the common ways of implementing instantiation actions as well as their interplays, so called instantiation interplays. As a case study, we mined for patterns in a set of 2,028 Java projects that instantiate four of the most popular Java frameworks. We also classify the extracted interplays according to the different contexts in which they occur. We found that our approach discovers relevant practices and interplays that are not covered by previous approaches. Our results will allow developers to have a better understanding of the frameworks they instantiate.

软件框架定义了通用应用蓝图,可通过特定于应用的实例化操作(如重写方法或提供实现某接口的对象)将其实例化为实际应用程序。当框架文档有所欠缺时,开发者可参考同一框架的其他实例化实现,以明确所需的实例化操作规范。本文提出一种自动化方法,可从现有开源框架实例化代码中挖掘框架实例化模式。该方法采用基于图的表示形式,捕捉实现实例化操作的通用方式及其联动关系(下文简称实例化联动关系)。作为案例研究,我们对2028个实例化了四款主流Java框架的Java项目进行实例化模式挖掘。同时,我们根据实例化联动关系出现的不同上下文场景,对其进行分类标注。实验结果表明,本方法能够挖掘到此前相关方法未覆盖到的实用实践与实例化联动关系。本研究结果能够帮助开发者更好地理解其所实例化的框架。

提供机构:
Zenodo
创建时间:
2024-03-29
二维码
社区交流群
二维码
科研交流群
商业服务