AI 中文总结
研究如何解决移动应用开发中自动代码生成忽视设计原则和架构质量的问题,核心方法是用UVL建模设计模式可变性并结合Jinja模板实现Swift代码生成,利用SPL工程原则,促进了可维护等移动应用的生产。
AI 中文摘要
在移动应用开发中,对自动代码生成的依赖增加,常导致忽视基本设计原则和架构质量的代码。本文通过捕获和利用软件设计模式的固有可变性,来系统生成可定制且结构良好的移动应用,应对这一挑战。我们提议使用通用可变性语言(UVL)来明确建模常见设计模式(如单例、策略、观察者、适配器和工厂方法)的结构和行为变化点。这些模型与可复用的Jinja模板集成,实现Swift代码生成。我们的方法利用软件产品线(SPL)工程原则,将设计模式视为产品线内的可配置资产,支持自动生成自定义设计模式。我们还分析了建模模式的配置空间,洞察其可变性复杂性。通过形式化设计模式可变性并将其嵌入生成过程,我们的工作弥合了模型驱动工程与实际移动开发的差距,促进了可维护、可复用且架构合理的应用的生产。
英文摘要
The increasing reliance on automatic code generation in mobile application development often leads to code that neglects fundamental design principles and architectural quality. In this work, we address this challenge by capturing and exploiting the inherent variability of software design patterns to systematically generate customizable and well-structured mobile applications. We propose the use of the Universal Variability Language (UVL) to explicitly model the structural and behavioral variation points of common design patterns, such as Singleton, Strategy, Observer, Adapter, and Factory Method. These models are integrated with reusable Jinja templates, enabling code generation in Swift. Our approach leverages Software Product Line (SPL) engineering principles, treating design patterns as configurable assets within a product line and supporting automated generation of custom design patterns. We also analyze the configuration space of the modeled patterns, offering insights into their variability complexity. By formalizing design pattern variability and embedding it into the generation process, our work bridges model-driven engineering with practical mobile development, promoting the production of maintainable, reusable, and architecturally sound applications.
CommentsResearch paper presented as a Master's Thesis for the MSc in Advanced Software Technologies for Mobile Devices, Universidad San Jorge (Spain), September 2025