没有合适的资源?快使用搜索试试~ 我知道了~
软件X 19(2022)101163原始软件出版物NEFBDAA-用于构建动态Angular应用程序的.NET环境达米安·弗罗什恰克军事技术大学,UL。将军Sylwestra Kaliskiego 2,00-908华沙,波兰ar t i cl e i nf o文章历史记录:2022年3月8日收到收到修订版2022年6月10日接受2022年保留字:C#语言.NET CoreAngularDynamic GUI清洁建筑SPA科学门户a b st ra ct在当今时代,为不同目的构建基于Web的应用程序的工具的可用性大大增加。此外,应用程序可以与不同模式的架构,数据流,认证机制等所有提到的方面需要研究人员熟悉最新的技术,开发方法,以及许多其他不那么重要的设施,从他们的角度来看。而且,它们的开发和维护往往需要太多的资源,特别是当数据模型发生变化时。为了克服这些问题,NEFBDAA已经开发出来。一个高级的C#,.NET Core和Angular基于Web的框架,鼓励快速开发和干净,实用的设计。它解决了Web开发中的许多困难。因此,研究人员只需要专注于开发科学工作,并修改他们的基于Web的应用程序,只需更改几行代码。所提出的框架也可以用于私营部门,因为在这种条件下得到了验证©2022作者由爱思唯尔公司出版这是CC BY许可下的开放获取文章(http://creativecommons.org/licenses/by/4.0/)中找到。代码元数据当前代码版本0.1用于此代码版本的代码/存储库的永久链接https://github.com/ElsevierSoftwareX/SOFTX-D-22-00062可重现胶囊的永久链接不可用, 因为它是一个GUI工具包。法律代码许可证MIT许可证使用git的代码版本控制系统使用C#、.NET Core、Angular、TypeScript、JavaScript的软件代码语言、工具和服务汇编要求、操作环境和依赖关系如果可用,请链接到开发人员文档/手册https://github.com/damianfraszczak/nefbdaa/blob/main/README.md问题支持电子邮件damian. wat.edu.pl1. 动机和意义大多数科学软件都需要图形界面,以便进行简单且用户友好的外部输入和数据分析。实现CRUD(创建、读取、更新、删除)[1]功能通常需要编写大量样板代码,每次底层数据模型发生变化时都必须维护和修改这些代码[2,3]。此外,用户界面(UI)已经变得耗时且昂贵。通常,交互式系统的图形用户界面(GUI)占源代码的48%,需要大约45%的开发时间和50%的实现时间,并覆盖37%的维护时间[4,5]。减少构建和维护电子邮件地址:damian. wat.edu.pl。https://doi.org/10.1016/j.softx.2022.101163用户界面允许更多的努力来解决科学问题[2,6],直接激励NEFBDAA。这种方法将使他们能够专注于更重要的方面,而不会立即被许多实施细节所迷惑,然后拥有更新实施的工具,以与高级别选择保持一致[5,7,8]。如今,技术和基础设施提供了放弃“胖客户端”方法的巨大 这不仅对软件用户,而且对研究人员群体来说都是一个很好的方向。他们的开发可以很容易地通过互联网访问,而无需安装任何东西。不幸的是,大多数研究人员无法跟上最新的技术变化,并试图用框架来2352-7110/©2022作者。由爱思唯尔公司出版这是CC BY许可下的开放获取文章(http://creativecommons.org/licenses/by/4.0/)。可在ScienceDirect上获得目录列表SoftwareX期刊主页:www.elsevier.com/locate/softx达米安·弗罗什恰克软件X 19(2022)1011632Fig. 1.基于NEFBDAA的Covid-19跟踪应用程序[23,25]。它们很清楚,但是可能不受支持或者不像当前的那样容易访问。科学网关是基于领域的集成组件,通过提供可配置的界面和利用尖端技术帮助克服这些问题,以避免用户遇到低级技术问题,并为他们的科学研究提供易于定制的图形界面[11]。它们中的大多数通过基于API的接口将前端和后端层解耦[12],从而允许网关社区将精力集中在设计社区特定的图形用户界面(GUI)[3]上。然而,开发后端和前端解决方案可能会挑战非IT专家[6]。为了缓解这个问题,NEFBDAA(用于构建动态Angular应用程序的.NET环境)已经引入,以提供一个可扩展的单页应用程序(SPA)[13],基于尖端Web技术的环境,包括.NET Core [14]和Angular[15,16],这是当今最流行和广泛使用的技术之一[17,18]。引入以下框架背后的主要思想是尽可能避免锅炉代码[19,20],并利用基于模型的用户界面开发(MB-UID)方法[8]直接从业务逻辑的架构模型[21通过使用数据注释和高级代码对表示层进行抽象以进行自定义用户界面开发,所呈现的环境可以显著缩短开发时间并改善未来的科学发现它实现了用于在日常Web应用程序中构建可靠,安全[22]和通用工具的它是一个高级的.NET Core和基于Angular的Web框架,鼓励快速开发和干净,务实的设计。开发人员和研究人员可以轻松地使用它来构建基于SPA的应用程序,这些应用程序利用了最好的模式、尖端技术和UI域模型生成,避免了经典问题的样板代码。使用引入的框架是最令人钦佩的解决方案,因为一个产品是从零开始构建的,只需要几行代码。它是一个独立于域的解决方案,可以很容易地用于任何可以通过代码和SQL建模的数据该框架已成功地用于作者参与的商业和科学项目[23 -25 ],并在图23- 25中说明了所获得的结果。 1和2.2. 科学和技术背景目前,构建应用程序的表示层它需要约45%的部署时间,并涵盖37%的维护时间[4,5]。此外,典型的交互式应用程序包含约48%的源代码,仅用于UI操作。引入基于模型的用户界面开发方法以缓解上述困难[5,8]。它的目的是通过减少图二.基于NEFBDAA的传感器数据分析应用[24]。开发UI,同时确保UI质量[7]。基于所提出的想法构建应用程序为最终产品提供了很大的可能性,包括更高的生产力和代码质量,从而减少错误[7,26]。它减少了需求和实现的差距,并产生了结构良好的系统[5,7]。除了引入MB-UID的缺点之外,可用的实现面临多个问题。市场和科学家们正在向网络界面、无处不在的系统和无线移动。旧技术正在被淘汰。Web应用程序是基于SPA方法构建的,其中页面通过动态地用新数据重写当前内容而不是重新加载整个页面来与Web浏览器交互[8,27,28]。此外,大多数可用的解决方案只关注UI,而不与业务逻辑连接[28]。有些软件附带了支持快速应用程序开发(RAD)的工具。尽管如此,他们的特点是非常所见即所得(所见即所得)导向。它们对于创建原型和真实的UI非常有用,可以在低级别细节上利用该工具的所有设计方面[8]。尽管如此,当do- main模型发生变化时,它们仍然需要开发人员的时间,并且不能立即应用于大范围的模型,因为它们需要单独定义。运行时生成可以用来代替静态UI模型来缓解这个问题。通过这种方式,在运行时通过反射处理构建UI。它可以轻松实现UI演化,减少开发时间消耗和低级别适配。不幸的是,最终的UI在使用之前是不知道的该框架涵盖了许多最新的基于Web的应用程序功能,并试图克服开发人员和科学家在实现软件时可能面临的众所周知的问题。它提供了一组用于从头开始构建项目的实用程序,例如准备和访问数据模型,通过使用Web应用程序消费和渲染数据模型,通过API保护和公开数据许多工具分别提供类似的功能,但没有一个工具可以提供一体化的解决方案。MB-UID透视图[29]利用基于反射的方法为独立应用程序构建UI元素。它自动考虑数据模型的Python类型提示,以基于PyQT UI [20]库形式配置适当的上述方法也用于[30]中基于Java的独立应用程序和Web应用程序[9]。通过代码和WYSIWYG工具的静态UI配置在[11,31最终的UI Web表单是基于JSON可配置文件响应式生成的,[35]使用XML格式来存储定义的模式。[36]介绍了基于代码的交互式但自动的UI转换它生成静态内容配置,可以在最终使用之前进行修改。它随Eclipse工具一起提供,专用于Java环境。不幸的是,它没有得到进一步的支持,只适用于一些小的情况。[37]也基于用于传统网页的XML格式。基于模板的UI构建方法有一些优点。尽管如此,在重新创建模板文件之前,达米安·弗罗什恰克软件X 19(2022)1011633在数据模型更改后手动更新,导致错误和时间损失[38]。此外,它们构建在不受支持的技术上,如AngularJS [11],很少用于它们中的大多数专用于胖客户端[9,29,36],并且取决于小部件库,它们是平台依赖的。很少有工具提供CRUD支持[21,40]。很少有工具根据数据字段映射到标头的配置动态生成Web数据表。Django-admin模块[40]提供了类似的功能,应用程序管理员可以在其中执行一些CRUD操作。但是,此功能仅限于基于HTML模板的少数用户,主要用于数据调试目的。此外,它只能在 Django- admin 模 块 中 使 用 , 而 不 能 在 专 用 应 用 程 序 中NEFBDAA可以很容易地嵌入到任何支持JavaScript的环境由于高度模块化,NEFBDAA组件可以单独使用。角度模块可以作为微前端嵌入到其他应用程序中[27],而.NET部分作为专用API。[41,42]利用域对象反射处理来提供动态表单,但它们是为Java独立应用程序设计的。有许多资源可以创建API架构来实现这一点[20,43- 45 ],但许多资源是相互排斥的此外,对于后端层,还必须考虑其他多个方面:数据库管理、异步任务处理、应用程序安全性、数据访问验证、数据库存储库、应用程序服务或REST API端点以及文档。开发团队可以解决所有上述问题,但很容易忘记如何或做得不正确,导致haz-preferred问题,包括数据泄漏[20,22,46,47]。此外,不存在提供基于域模型的表单和表格模型生成并利用该信息来为SPA构建动态GUI表格和表单的解决方案。在功能方面,它类似于Django Framework管理面板功能,也允许动态表单生成,渲染和验证。尽管如此,它仍然致力于Python,并面向模板设计系统来呈现它们,因此它不会面临与SPA相同的问题。没有解决方案提供复杂分析的自动化功能,具有基于自定义条件的数据过滤,具有自动生成的过滤器表单[28,48]和数据表呈现。除了GUI增强功能,NEFBDAA还提供了预配置和基于最佳设计模式的环境,用于使用SPA方法构建基于Web的3. 软件描述NEFBDAA是一个高级的C# [49],.NET Core [14]和Angular[15]基于Web的环境,鼓励快速开发,利用干净,实用的设计和最好的,尖端的架构设计来构建使用REST API的SPA服务它解决了Web开发的许多麻烦,因此,研究人员可以只专注于开发科学工作,并修改他们的基于Web的应用程序,只需更改几行代码。所提出的环境建立在[20,43- 45 ]定义的最关键的环境迫使开发人员将应用程序定位在由与外部世界接口的控制器管理的实体表示的域对象周围。此外,委员会认为,由于该框架使用的核心库是当今最流行和最广泛使用的技术之一[17,18],因此将来仍将提供对它们的支持和更新。其架构如图所示。 3,包含:.NET核心模块-它提供了一组标准模型,实用程序和功能,支持构建Web应用程序的后端层。它涵盖了数据库访问和管理层、异步任务处理和增强的CRUD层实现,包括动态数据过滤、排序、聚合、分页和安全配置。它还为UI表单、表和数据属性提供了配置生成器,以改进依赖性注入过程和应用程序配置。引入的服务可以通过配置模型轻松配置,必要时启用或禁用它们。这种方法可以从Spring Boot [50]中了解到Angular核心模块提供了一组标准的模型、实用程序和功能,支持构建安全、响应和维护SPA。除此之外,它还提供了负责消费基于JSON的模型配置以显示表单和表格的组件。.NET Core Angular starter应用程序是一个示例starter应用程序,展示了如何使用默认设置启动项目。标准使用过程包含六个阶段,图四、可以注意到,大部分工作是在作为UI组件的后端部分基于其后端定义自动生成。Starter模板检出。要开始使用该框架,用户可以从头开始或重用提供的应用程序模板。最好使用具有预定义应用程序设置集的模板,包括日志记录、数据库管理或安全性。领域模型定义。它们代表业务领域,被称为计算独立模型(CIM)或平台独立模型(PIM)[5]。它们的NEFBDAA定义示例如清单所示1.ViewModels定义。在NEFBDAA中,它们被用作数据传输对象(DTO)和具体交互单元(CIU)。DTO是前端和后端部分之间的集成协议,而CIU定义了最终用户如何感知和操作UI[5]。关于数据合同协议的更多信息,请参见附录-数据合同规范。清单2显示了使用NEFBDAA对它们的示例定义后端服务层定义。业务逻辑层从数据库获取数据,并将其公开给表示层,反之亦然。适当的服务专用于一个域模型和多个ViewModel。后端配置。默认情况下,starter模板带有一组预定义的功能,可以在启动之前进行调整,例如使用安全HTTP头或用于JWT身份验证的头名称。前端UI生成。它指的是使用基于CIU配置的HTML标记来提供最终的UI(FUI)[5]。清单6和清单7显示了它们在NEFBDAA中的示例用法。该软件的关键功能是通过基于域模型的声明性方法简化UI组件管理过程。Angular应用程序的数据表和Web表单是基于C#代码中定义的配置通过数据属性和工厂方法生成的。利用这种方法,该环境的用户必须只在一个地方修改其域模型,并且使用该域对象的所有UI元素都将受到影响。在静态类型语言中,可以利用反射机制和该语言的GUI小部件工具包(例如,SWING for Java)·········达米安·弗罗什恰克软件X 19(2022)1011634图三. NEFBDAA架构。见图4。 NEFBDAA使用工作流。WebForms for C#不幸的是,这种方法只用于正在被放弃的“胖客户端”。如今,没有可用的解决方案可以为“瘦客户机”和SPA方法提供它。NEFBDAA代表了弥合这一差距的尝试,并为技术和非技术用户介绍了快速开发的即用型Web框架。此外,它不仅是一个UI生成工具,而且是整个Web应用程序框架,为可移植,可维护和可访问的应用程序实现最佳设计模式。它附带了一组预定义的配置场景,只需要几行代码即可立即激活。核心库是根据对当今最流行的技术的详细分析选择的,并在未来得到支持。Angular框架构建在模型视图控制器(MVC)结构之上, 允许轻松分 离关注点。 此外,它 具有全球公认的Angular社区共享的代码组织规则,并由开发工具强制执行。上述因素对于主要解决方案至关重要。像Vue.js或React.js这样的框架在这方面更灵活。在性能方面,所有框架都是相似的[51]。Nebular UI Kit提供了应用程序该库有四个基于Eva设计的令人惊叹的视觉主题.NET Core是一个跨平台解决方案,旨在提供按使用付费的模型,其中性能是一个关键特性。它被证明是当今最快的可用框架之一[18,54]。4. 说明性实例NEFBDAA是一个一体化的软件框架,帮助用户专注于构建应用程序逻辑,而不是证明标准在他们的应用程序中需要的GUI组件。确认这一论点的最佳方法是展示如何准备和进行具有以下要求的实验(所提出的需求来自真实的生产场景):您的目的是实现软件的办公室之旅,组织旅游在一个特定的位置。一般来说,您有一个旅游列表,提供有关旅程的基本信息-例如,在伦敦周围的导游带领客人旅行您需要提供在特定时间预订特定导游的功能-让我们称之为导游预订。新模型需要在NEFBDAA的前端首先,必须创建新的数据模型以存储在数据库-GuideBooking.示例实现如清单1所示。这个模型看起来像一个普通的普通旧对象(POCO)。它扩展了BaseAuditableEntity实用程序类,以自动存储实体修改时间,并使用EntityFramework中的Table数据注释将其标记为实体。下一步是准备ViewModel类,它曾经是后端和前端服务之间的数据契约。此外,在这个框架中,视图-模型是一个具体的交互单元( CIU ) , 一 个 对 象 是 配 置 所 有 相 关 GUI 元 素 的 地 方 [5] 。GuideBooking的示例ViewModel实现如清单2所示。左侧部分提供了有关配置通用GUI元素的信息,第二部分解释了特定字段的数据契约和行为。可以看出,整个配置是通过数据属性实现的,这些数据属性是一些类和字段元数据。所有这些数据都在运行时通过反射进行处理以生成UI··达米安·弗罗什恰克软件X 19(2022)1011635配置.包含前端的数据表配置。 它有三个参数:-可见字段列表,-可过滤字段列表(包括隐藏字段),以及-导出数据中存在的字段列表。如果没有列出具体字段,则会考虑所有字段。由 于 动 态 表 单 生 成 提 供 了 更 多 的 选 项 , 因 此 它 将 利 用属性表单配置为在CARD布局中显示(),以及在每个行,那里应该被放置三领域()中选择。此外,一个德-错误表单组(没有名称)不应可见()中选择。这组提供了一个模拟-显示或隐藏表单上的所有字段。每个FormGroup-Config属性为表单上可见的每个已定义表单组提供属性。这里只有包含在每个表单组中的字段通过EditFields提供。ViewModel实现与标准实现类似,不同之处在于数据属性的使用。可以看出,GuideId字段被注释为[客户端]用于指示它是OneToMany关系,并且默认情况下呈现为选择列表,其中数据是根据提供的计算的。适当的服务将利用此信息自动向UI组件填充数据这份报告的数据还显示,达米安·弗罗什恰克软件X 19(2022)1011636根据类型进行预过滤得双曲正弦值.特性.由于C#中数据属性的约束,过滤器与数据属性一起应用。它不允许将对象用作属性特性类型。只允许简单类型和枚举类型[49]。对于显示的过滤器配置,GuideBooking视图上的每个可见指南将根据以下内容进行过滤RolesString-包含Guide作为提供的选项(“LIKE "用于RolesString是字符串类型);GuideStatus-为“Active”或“Preferred "选项之一(”IN"用于列表);OpsDocumentPortId- to与提供的值相同GuideBooking.对于日期字段,应用了详细的字段配置,将其呈现为日期组件,并限制为最大和最小日期如清单2和清单3所示字段持续时间是一个数组字符串字段,可用选项通过使用与财产此外,这个字段被配置为呈现为多个选择组件,如清单2和清单4所示。其他属性根据处理对象时计算的默认配置显示。下一步是为存储库、CRUD服务和API控制器提供所有必需的服务类实现。实现所有提到的对象都很简单,因为它依赖于扩展现成的类。此外,如果不需要在存储库中提供自定义逻辑,则使用泛型GuideBooking的示例实现被省略,因为它只需要使用正确的模板参数扩展ICrudService和ApiReadWrite- Controller。后端部分完成。从上面可以看出,许多后端特定的锅炉代码已被遗漏。DynamicFormService可以生成一个基于JSON的文件,该文件描述了与指南预订模型相关的所有GUI元素的默认选项。前端应用程序会自动为数据表加载此配置,并在表单呈现时获取表单配置。用 户 需 要 准 备 一 个 表 格 设 置 并 在 页 面 上 使 用展示一张桌子。可以通过编程方式创建该设置或者从后端获取并覆盖。清单5给出了用于呈现表元素的示例代码,其结果如图所示。五、左边是示例用法在HTML模板中锚定组件的,而在右边是组件配置。该配置来自后端使用参数进行匹配,这只是必需的。该表将显示“指南预订”标题,没有批量更新,具有基本过滤功能,2种编辑模式:表格内联编辑和单独页面编辑使用对象重新定义窗体与呈现表一样简单。用户必须配置组件并将其放置在页面上,如清单6所示,其中左侧显示元素的锚定,右侧显示其配置。如前所述,配置来自后端,可以根据运行时的需求在前端进行修改。 结果如图所示。 六、根据清单2中的配置,生成的表单被分成每行12列的行,因此字段的 布 局 为 响 应 性 提 供 了 支 持 。 存 在 名 为 “Ops document” 和“Requirements”的字段组。此外,表单根据动态条件显示和隐藏元素,并动态显示只读字段,其内容根据指定的对象属性计算。为任何应用程序构建整个CRUD层所需的时间和工作量都是微不足道的。许多代码是不必要的,用户关注的是逻辑,而不是GUI元素和组合数据。5. 影响这个框架允许开发人员和研究人员专注于在他们的应用程序中提供科学价值,减少了开发和维护用户界面代码以及所需的所有集成的需求。它有三个独立的模块,专用于不同的目的:前端和后端实用程序模块和启动应用程序,使其更容易启动框架;并使用REST API强制SPA的知名设计模式前端模块有四个基于Eva Design System规范的可视化主题:响应式布局、RTL支持、高分辨率以及基于模型规范自动生成的专用CRUD导向表单和表格组件。表单层提供了20多种字段类型,包括动态选择,日期时间和地理点选择与谷歌地图API,自定义验证,四个表单组渲染策略,网格系统,可靠的组件环境设置管理,文档上传,等等。数据表自动填充可分页内容,这些内容可以根据、···达米安·弗罗什恰克软件X 19(2022)1011637图五、 基于提供的配置的动态表可视化。图六、 基于提供 的配置的动态表单可视化。数据模型此外,所有后端定义的设置都可以很容易地被前端配置覆盖。后端模块提供了一组实用程序服务,帮助访问和管理持久对象 , 提 供 OpenApi 规 范 描 述 的 可 通 过 SwaggerAPI 访 问 的maintenance API,增强的安全性和身份验证,异步任务,文件上传,一组专用数据属性用于在服务器端配置依赖注入和UI组件它不仅是一个用于在SPA中配置和自动构建UI CRUD相关组件的框架,而且是一个使用众所周知的模式构建在整体架构上的可扩展Web应用程序的整个应用程序框架。直到今天,通过利用这个软件,作者能够达米安·弗罗什恰克软件X 19(2022)1011638提高他们对科学研究的关注,减少跨项目维护用户界面代码所需的时间。该库被积极用于作者参与的商业和科学项目[236. 结论NEFBDAA是一个基于C#、.NET Core和Angular的高级Web环境,它鼓励使用干净、实用的设计和最好、最先进的架构设计进行快速开发,以使用REST API构建使用SPA的微服务。它解决了Web开发的许多麻烦,因此研究人员可以只专注于开发科学工作,并通过几行代码更改来修改他们的基于Web的应用程序。它是一个基于属性的框架,用于管理基于Angular框架的单页应用程序的UI表单和UI组件配置源自后端代码,以JSON格式传输到前端,可以轻松覆盖生成所需组件。要开始使用这个框架,用户必须具备一些构建Web应用程序的知识,不需要有任何与构建UI元素相关的知识,因为注释模型字段就足以获得基于不同布局系统、复杂验证机制,利用各种输入组件从用户获取输入并显示,并通过动态富表过滤相关数据模型列表。所提出的解决方案的利用得到了商业和科学使用的验证[23竞合利益作者声明,他们没有已知的竞争性财务利益或个人关系,可能会影响本文报告的工作数据可用性文章中描述的研究未使用任何数据阑尾数据合同规范该软件的核心功能是提供基于后台动态配置的用户界面组件。该工具包分为两个主要部分:后端和前端。所提到的两个层是独立的,并且利用不同的环境和技术来提供它们的功能。前端使用JavaScript和浏览器运行时,后端是C#和.NET Core环境。通信达米安·弗罗什恰克软件X 19(2022)1011639HTTP和JSON对象代表不同的方面。所提出的集成流程用于基于后端生成的JSON配置构建动态UI组件。本节只列出了关键部分。所示的配置对象可以在域对象上动态生成,并经由REST API来消费或者用JavaScript从头开始创建,使这两个部分独立。表单基于清单7中提供的以下配置项:FormModel-包含表单配置和编辑对象。该对象从后端API服务返回,并由前端使用以提供动态UI表单。FormConfig-包含整个表单的配置,包括:标题、一般表单布局、自定义验证器列表、定义的表单组或表单显示模式。FormGroupModel-是表单组的表示,即,表示为一起呈现的一个整体的字段列表。它由诸如标题、名称、布局、可视性条件集等配置选项组成,以根据已编辑对象的计算属性显示/隐藏组件。EditFieldFunctionModel-是表单中显示的对象字段的表示形式。它有很多配置选项。最重要的是:options -对于select like字段,它是一个选项列表,用于显示可以静态配置或基于提供的条件和数据模型自动计算的内容; inputType -负责显示该字段的UI组件的类型; computedOn- 它允许呈现不存在于模 型 , 但 它 们 是 根 据 某 些 模 型 属 性 计 算 的 只 读 字段;addInlineConfig-如果该字段表示相关模型,则它构成在当前表单上添加新对象的配置。还有多个特定于表的属性,如filterable、queryType、tableTitle等。表UI组件通过清单8中的以下配置模型进行配置ITableConfig-包含表的整个配置,包括标题、可见、可过滤和可导出字段的列表、预定义的过滤器、有关显示广告UI元素(如过滤器)的信息、添加/编辑/删除/导出按钮、内联编辑、工具栏等。FilterRuleModel-表示为获取新数据而在表上配置的筛选器。它允许构建复杂的查询并将它们与AND或OR子句组合。引用[1]Martin J.管理数据库环境。普伦蒂斯-霍尔:新泽西州恩格尔伍德悬崖; 一九八三年[2] Cerny T,Chalupa V,Donahoo MJ.用户界面生成对维护的影响。2012年IEEE 计 算 机 科 学 与 自 动 化 工 程 国 际 会 议 。 2012 年 , 第 621-5 页 。http://dx.doi.org/10.1109/CSAE.2012.6272847。[3]Daniel F,Yu J,Benatallah B,Casati F,Matera M,Saint-Paul R.理解UI集成:问题、技术和机会的调查。IEEE Internet Comput 2007;11(3):59-66.http://dx.doi.org/10.1109/MIC.2007.74网站。[4]Myers BA,Rosson MB.用户界面编程综述。在:继续- ings的SIGCHI会议上的人 的因素在 计算系统 。1992年,第 195-202页。http://dx.doi.org/10.1145/142750.142789网站。······达米安·弗罗什恰克软件X 19(2022)10116310[5] 介 绍 基 于 模 型 的 用 户 界 面 。 https://www.w3.org/TR/2014/NOTE-mbui-intro-20140107/. [2022年5月4日]。[6] Kennard R , Leaney J. Towards a General Purpose Architecture for UIGeneration。JSystSoftw2010;83(10):1896-906.http://dx.doi.org/10.1016/j.jss.2010.05.079。[7] Coyette A,Kieffer S,Vanderdonckt J.用户界面的多保真度原型。In:Baranauskas C,Palanque P,Abascal J,Barbosa SDJ,editors.人机交互Berlin ,Heidelberg:SpringerBerlinHeidelberg;2007, p.150http://dx.doi.org/10.1007/978-3-540-74796-3_16。[8] 杨伟杰,李晓梅,李晓梅.基于模型的用户界面开发的过去、现在和未来-Com2011;10(3):2-11.http://dx.doi的网站。org/10.1524/icom.2011.0026。[9] Chmielewski M,Kukiekenka M,Fragranszczak D,Bugaelewski D.使用传感器数据融合的态势感知发展的军事和危机管理决策支持工具。In:J.W. J,Borzemski L,Wilimowska Z,editors.信息系统体系结构与技术:第38届信息 系 统 体 系 结 构 与 技 术 国 际 会 议 论 文 集 , 卷 656 。 Cham : SpringerInternational Publishing; 2018 , p. 189-99. http://dx.doi.org/10.1007/978-3-319-67229-8_17网站。[10]Lok S,Feiner SK,Chiong WM,Hirsch YJ. 瘦客户机计算的图形用户界面工具包方法。收录于:第十一届万维网国际会议论文集。2002年,第718页。http://dx.doi的网站。org/10.1145/511446.511540。[11][10] 李 文 , 李 文 Json-GUI- 用 于 动 态 生 成 基 于 表 单 的 Web 界 面 的 模 块 。SoftwareX 2019;9:28-34. http://dx.doi.org/10.1016/j.softx.2018.11.007网站。[12][10]李国雄,李国雄. API之美在客户眼中:220万maven依赖关系揭示了客户端API的使用范围。JSystSoftw2022;184:111134.http://dx.doi.org/10.1016/j.jss.2021.111134网站。[13]弗拉纳根湾JavaScript:权威指南。第5版。北京; Sepastopol,CA:O 'Reilly;2006年。[14]净|自由了跨平台.开源. 2022年,微软。https://dotnet. microsoft.com/en-us/网站。[2022年2月22日]。[15]角度。 2022年,https://angular.io/。 [2022年2月22日]。[16] 弗里曼默里9. baby s.l.:压。2020年,【上线】。可通过以下网址获得:https://link.springer.com/10.1007/978-1-4842-5998-6。[2022年3月2日]。[17] 262588213843476.前端框架流行度(React,Vue,Angular和Svelte)。2022年,吉斯特。https://gist.github.com/tkrotoff/b1caa4c3a185629299ec234d2314e190.[2022年5月4日]。[18] 最 流 行 的 后 端 框 架 - 2012/2021 - 新 更 新 - 统 计 和 数 据 。 2022 ,https://statisticsanddata.org/data/most-popular-backend-frameworks-2012-2021/. [2022年5月4日[19] Antović I,Vlajić S,Milić M,Savić D,Stanojević V.基于用例和数据模型自动生成用户界面的模型和软件工具。IET Softw 2012;6(6):559.http://dx.doi.org/10.1049/iet-sen的网站。2011.0060。[20] Chmielewski M,Bugaelewski D,Frenchszczak D.能够进行可穿戴传感器数据融合和健康事件推理的生物医学系统的设计和开发指南:案例研究。2021,http://dx.doi.org/10.6084/m9.figshare.19672689,31.05。[21]Machado M,Couto R,Campos JC. ModUS:基于模型的用户界面原型。在:ACM SIGCHI工程交互计算系统研讨会论文集。葡萄牙里斯本,2017年6月,2017年,第111-6页。http://dx.doi.org/10.1145/3102113.3102146网站。[22][10]杨文,李文,李文.基于ISO 25010质量相关特性的软件体系结构选择指南 。IntJSystAssurEngManag2017;8 ( S2 ) : 886-909 。http://dx.doi.org/10.1007/s13198-016-0546-8.[23]HackYeah-的最大固定黑客马拉松在欧洲2022年,https://2020-april.hackyeah.pl/2020/04/16/the-finalist-h-e-l-p-health-environment-for-living-in-pandemia/。[2022年3月2日]。[24]弗伦奇·什恰克D BGDCaLP -血糖数据采集器和水平预测器:对可穿戴传感器的研究,格林纳达,西班牙。http://dx.doi.org/10.6084/m9.figshare.19732774。[25] Chmielewski M , Frenchszczak D , Bugaaliski D , Sierzalisga J ,Chaorek S.H.E.L.P. - 基于传感器融合的分析移动系统,用于识别和监测COVID-19 感 染 群 。 2020 年 , http://dx.doi.org/10.13140/RG 。2.2.16277.55526。[26] Fernandez A,Abrahão S,Insfran E.模型驱动web开发可用性检验方法的实证验证。JSystSoftw2013;86(1):161-86.http://dx.doi.org/10.1016/j.jss.2012.07.043网站。[27]杨文,李文,李文.采用微前端的动机、好处和问题:多域文献综述。InfSoftwTechnol2021;136:106571.http://dx.doi.org/10.1016/j.infsof.2021.106571网站。[28]Ordoñez K,Hilera J,Cueva S. 可访问软件的模型驱动开发:系统性文献综述。UniversAccessInfSoc2022;21(1):295-324.http://dx.doi.org/10.1007/s10209-020-00751-6网站。[29] 弗伦奇·什恰克D RPaSDT-谣言传播和源检测工具包。SoftwareX 2022;17:100988. http://dx.doi.org/10.1016/j.softx.2022.100988网站。[30] Chmielewski M,Fraszczak D,Kukielka M,Bugaelewski D.在分布式高分辨率构造性仿真环境symsg边界战术中实现的体系结构软件概念2017年第 四 届 数 学 和 计 算 机 在 科 学 和 工 业 中 的
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 4
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- zigbee-cluster-library-specification
- JSBSim Reference Manual
- c++校园超市商品信息管理系统课程设计说明书(含源代码) (2).pdf
- 建筑供配电系统相关课件.pptx
- 企业管理规章制度及管理模式.doc
- vb打开摄像头.doc
- 云计算-可信计算中认证协议改进方案.pdf
- [详细完整版]单片机编程4.ppt
- c语言常用算法.pdf
- c++经典程序代码大全.pdf
- 单片机数字时钟资料.doc
- 11项目管理前沿1.0.pptx
- 基于ssm的“魅力”繁峙宣传网站的设计与实现论文.doc
- 智慧交通综合解决方案.pptx
- 建筑防潮设计-PowerPointPresentati.pptx
- SPC统计过程控制程序.pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功