[发明专利]一种创建并调用通用组件的方法及设备有效
申请号: | 201110170947.3 | 申请日: | 2011-06-23 |
公开(公告)号: | CN102841780A | 公开(公告)日: | 2012-12-26 |
发明(设计)人: | 唐红兵 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
主分类号: | G06F9/44 | 分类号: | G06F9/44 |
代理公司: | 北京同达信恒知识产权代理有限公司 11291 | 代理人: | 黄志华 |
地址: | 英属开曼群岛大开曼*** | 国省代码: | 开曼群岛;KY |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 创建 调用 通用 组件 方法 设备 | ||
技术领域
本申请涉及计算机技术领域,尤其涉及一种创建通用组件并对创建的通用组件进行调用的方法及设备。
背景技术
随着计算机软件技术的不断发展,软件越来越朝着大而复杂的方向发展,为了对这种大而复杂的软件进行有效运用,可以将这些软件划分成一系列可先行实现、易于开发、理解和调整的组件。划分后的每个组件功能确定、单独设计、分别编码,最后将多个组件组装在一起,完成软件的运行。
在软件开发过程中,为了提高软件代码的可复用性,提高开发效率,可将常用的界面元素封装成一组相对独立的组件,由这些组件构成图形用户界面(Graphical User Interface,GUI)库或GUI平台。GUI平台中可存在几十种甚至上百种可用的组件,每种组件能够实现界面上的一种可见或不可见的功能。
在GUI平台内的组件可以以树形结构存在,任意一个组件都可以将其他若干个组件作为自身的子组件,构成组件之间的嵌套关系。如图1所示,为GUI平台内组件之间的嵌套关系示意图,从图1中可以看出,组件1内嵌套了组件2和组件3,而组件2内又进一步嵌套了组件4。作为子组件的组件4可以被组件2所调用,同样的,作为子组件的组件2和组件3又可以被组件1所调用。
而实际上,作为被嵌套的某些组件的功能具有通用性,即这些组件经常被嵌套至多种组件中,并且嵌套在每种组件中时,这些组件的属性都相同,则这些具有通用功能的组件称之为通用组件(Common Component)。
例如,即时通信软件中的边框组件可以被各种窗口类组件所嵌套,用于绘制窗口类组件的边框,背景组件也可以被各种窗口类组件所嵌套,用于绘制窗口类组件的背景,因此,边框组件和背景组件可称之为通用组件。
假设窗口类组件有会话窗口组件和系统消息窗口组件,按照目前的组件嵌套模式,如图2所示,会话窗口组件要通过创建边框组件和背景组件来实现对边框组件和背景组件的嵌套,进而获得边框组件和背景组件的功能;系统消息窗口组件同样也要通过创建边框组件和背景组件来实现对边框组件和背景组件的嵌套,进而获得边框组件和背景组件的功能。
从图2所示的嵌套结构可以看出,对于通用组件而言,当通用组件被多个其他组件嵌套时,即使这些通用组件被嵌套在其他组件中的属性相同,其他组件也必须分别嵌套通用组件,并只能对自身嵌套的通用组件进行调用,来达到运行通用组件功能的目的。在这种嵌套方式下,系统需要为每个其他组件创建通用组件分配用于创建的系统资源,即使相同的通用组件被多个其他组件创建时,系统也要为每次创建过程分配系统资源,导致内存资源的大量浪费;同时,每个组件在运行通用组件之前,都要创建该通用组件,由于每次的创建过程会占用一定的时长,因此,组件的正常运行速度也受到极大的影响。
发明内容
本申请的目的在于:提供一种创建并调用通用组件的方法及设备,用以解决现有技术中存在的由于嵌套创建通用组件,导致内存资源的大量浪费和组件运行速度低的问题。
一种创建通用组件的方法,应用于具有封装后的组件的软件系统中,包括:
在软件初始化时,生成通用组件库;
根据配置文件中记录的通用组件的属性信息,创建通用组件;
将创建的通用组件以及该通用组件的标识存储至所述通用组件库中。
一种调用通用组件的方法,包括:
确定待调用的通用组件的标识;
根据确定的所述标识,从已存储多个通用组件的通用组件库中查找所述标识所表示的通用组件;
调用查找出的通用组件。
一种创建通用组件的设备,应用于具有封装后的组件的软件系统中,包括:
库创建模块,用于在软件初始化时,生成通用组件库;
组件创建模块,用于根据配置文件中记录的通用组件的属性信息,创建通用组件;
存储模块,用于将创建的通用组件以及该通用组件的标识存储至所述通用组件库中。
一种调用通用组件的设备,包括:
标识确定模块,用于确定待调用的通用组件的标识;
查找模块,用于根据确定的所述标识,从已存储多个通用组件的通用组件库中查找所述标识所表示的通用组件;
调用模块,用于调用查找出的通用组件。
本申请有益效果如下:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110170947.3/2.html,转载请声明来源钻瓜专利网。
- 上一篇:服务器机柜系统
- 下一篇:食物中毒菌检测用载体以及食物中毒菌的检测方法