WO2014190821A1 - 一种创建应用的方法及装置 - Google Patents

一种创建应用的方法及装置 Download PDF

Info

Publication number
WO2014190821A1
WO2014190821A1 PCT/CN2014/075532 CN2014075532W WO2014190821A1 WO 2014190821 A1 WO2014190821 A1 WO 2014190821A1 CN 2014075532 W CN2014075532 W CN 2014075532W WO 2014190821 A1 WO2014190821 A1 WO 2014190821A1
Authority
WO
WIPO (PCT)
Prior art keywords
component
functional component
model
functional
primitive
Prior art date
Application number
PCT/CN2014/075532
Other languages
English (en)
French (fr)
Inventor
赵清伟
Original Assignee
华为技术有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 华为技术有限公司 filed Critical 华为技术有限公司
Publication of WO2014190821A1 publication Critical patent/WO2014190821A1/zh
Priority to US14/953,912 priority Critical patent/US9720658B2/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/34Graphical or visual programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04842Selection of displayed objects or displayed text elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/35Creation or generation of source code model driven
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/38Creation or generation of source code for implementing user interfaces

Definitions

  • the present invention relates to application development technologies, and in particular, to a method and an apparatus for creating an application, and belongs to the field of computer technology. Background technique
  • the embodiments of the present invention provide a method and an apparatus for creating an application, so as to implement a graphical creation application.
  • a method for creating an application including:
  • the executable code of the application to be created is generated according to the component model and the business function model.
  • the pre-defined primitive of the component model in the component interface is rendered according to the component model, to obtain a component interface diagram corresponding to the attribute value of the component attribute. Yuan, specifically includes:
  • the component interface primitive is generated according to the component model code.
  • the component model is mapped to a functional component model, and the functional component model is graphically displayed as a functional component graphic according to the component interface primitive, specifically including :
  • the function component primitive is rendered according to the function component presentation code.
  • the location coordinates of the component model corresponding to the component key identifier are at a location corresponding to the functional component interface
  • the code rendering function component primitive is displayed, which specifically includes: Calling a graphic operation interface of the drawing tool preset in the terminal, according to the position coordinate corresponding to the component key identifier, at the position coordinate corresponding to the function component interface, displaying the code rendering function component interface primitive according to the function component;
  • the graphically displaying the functional component model as a functional component graphic comprises:
  • the three-dimensional model of the functional component primitives is automatically modeled by using the three-dimensional presentation space capability of the drawing tool preset in the terminal, and hierarchically displayed according to the user-configured component display hierarchy.
  • the layer display is performed according to a component display level of the user configuration, and the specific information includes: a functional component primitive of the program interaction interface API; setting a display hierarchy of the functional component interface primitive of the API type to the lowest level value, to display the functional component interface primitive of the API type at the lowest level; and functional components of the API type
  • the display level of the input and output attribute primitive corresponding to the interface primitive is set to be 1 for the display level of the functional component interface primitive of the API type, to superimpose and display the attached image above the functional component interface primitive of the API type Input and output attribute primitives;
  • the determining, according to operation of the function component graphic element by the user, graphically establishing an association relationship between different functional component primitives in the application to be created Specifically include:
  • an annotation color message for color-labeling the function component graphic element receives, by the user, an annotation color message for color-labeling the function component graphic element, where the annotation color message includes a label color, an annotation time stamp, and a function component key identifier corresponding to the function component graphic element;
  • the determining, according to the sequence of the primitive label, the different functions in the application to be created includes:
  • an annotation sequence code for indicating the application function logic is automatically generated.
  • a business function model which specifically includes:
  • the component model and the service function model are , generating executable code of the application, specifically including:
  • a configured generated code template corresponding to the function component primitive of the UI type; generating an instant rendering component code according to the attribute of the functional component primitive of the UI type, and the corresponding configured generated code template;
  • the second aspect provides a device for creating an application, which is disposed on a terminal with a display device, and includes a component model, a component design module, a function design module, and a code generation module, where: the component design module is configured to receive a user. a property value of the configured component property, generating a component model according to the property value of the component property, and rendering a predefined primitive of the component model in the component interface according to the component model to obtain an attribute of the component property Value corresponding component interface primitives;
  • the function design module is configured to map the component model into a functional component model, and graphically display the functional component model as a functional component graphic element according to the component interface graphic element, according to the user
  • the operation of the element is to graphically establish an association relationship between different functional component primitives in the application to be created, and generate a service according to the association relationship between the different functional component graphics elements in the application to be created.
  • the code generating module is configured to generate executable code of the application to be created according to the component model and the business function model.
  • the component design module is specifically configured to: generate a component model code according to an attribute value of a component interface presentation format in the component attribute and an attribute value of the component interface presentation data ;
  • the component interface primitive is generated according to the component model code.
  • the function design module is specifically configured to: map component attributes of the component model to functional component attributes of the function component model;
  • the functional design module is further configured to:
  • the function design module is further configured to:
  • the three-dimensional model of the functional component primitives is automatically modeled by using the three-dimensional presentation space capability of the drawing tool preset in the terminal, and hierarchically displayed according to the user-configured component display hierarchy.
  • the function design module is specifically configured to:
  • the function design module is further configured to:
  • an annotation color message for color-labeling the function component graphic element receives, by the user, an annotation color message for color-labeling the function component graphic element, where the annotation color message includes a label color, an annotation time stamp, and a function component key identifier corresponding to the function component graphic element;
  • the function design module is further configured to:
  • an annotation sequence code for indicating the application function logic is automatically generated.
  • the function design module is further configured to:
  • the code generating module is specifically configured to:
  • a method and apparatus for creating an application according to an embodiment of the present invention using a component model configured by a user through a graphical component interface to create a graphical functional component primitive, and determining the implementation according to a user operation of the graphical functional component graphic element
  • the relationship between the functional component primitives; the functional component model and the association relationship are combined to generate a business function model for characterizing the program function, and the executable code of the application is generated according to the component model and the business function model. Therefore, the combination of component design and business function design realizes that in the complete application creation process, the user develops the zero code based on the visual interface, and simplifies the application creation process, and the application development and creation efficiency is high.
  • FIG. 1 is a schematic flowchart diagram of a method for creating an application according to an embodiment of the present invention
  • FIG. 2 is a schematic flowchart of an example of updating a component model in a method for creating an application according to an embodiment of the present invention
  • FIG. 3 is a schematic flowchart diagram of an example of generating a function component model in a method for creating an application according to an embodiment of the present invention
  • FIG. 4 is a schematic flowchart diagram of an example of displaying function component attribute primitives in a method for creating an application according to an embodiment of the present invention
  • FIG. 5 is a schematic flowchart diagram of an example of graphically establishing an association relationship between different functional component primitives in an application to be created in a method for creating an application according to an embodiment of the present disclosure
  • FIG. 6 is a schematic structural diagram of an apparatus for creating an application according to an embodiment of the present invention.
  • FIG. 7 is a flow chart showing an example 1 of creating an application of an application to which an application is applied according to an embodiment of the present invention
  • FIG. 8 is a flow chart showing an example of a device update component model for creating an application to which an embodiment of the present invention is applied;
  • FIG. 9 is a flow chart showing an example 2 of creating an application by using an apparatus for creating an application according to an embodiment of the present invention. Intention
  • FIG. 10 is a schematic structural diagram of an apparatus for creating an application according to another embodiment of the present invention.
  • FIG. 11 is a schematic structural diagram of an apparatus for creating an application according to another embodiment of the present invention. detailed description
  • the method for creating an application in the embodiment of the present invention is applied to a terminal with a display device, for example, by a device for creating an application.
  • the device for creating an application has a visual interface, that is, a display device, and the user operates the visual interface. , you can create an app.
  • a method of creating an application according to an embodiment of the present invention will be described from the perspective of a device for creating an application.
  • FIG. 1 is a schematic flowchart diagram of a method for creating an application according to an embodiment of the present invention. As shown in Figure 1, the method for creating an application includes:
  • Step 101 Receive an attribute value of a component attribute of a user configuration, generate a component model according to the attribute value of the component attribute, and render a predefined element of the component model in the component interface according to the component model, to obtain and The component interface primitive corresponding to the attribute value of the component attribute;
  • the device for creating an application provides a user with a component attribute to be designed in a graphical manner, and updates the user's real-time design information to a predefined component model, generates a component model, and then according to the properties of the component model.
  • the predefined primitive corresponding to the component model in the component interface is rendered to obtain the corresponding component interface primitive.
  • the meaning of rendering refers to generating graphical primitives based on the properties of the component model.
  • the functional entities provided by the component model include, for example:
  • API Application Program Interface
  • Model operation interface an interface for reading or updating a component model based on component information
  • the attributes of user-designable components include, for example, components that can trigger events, component external interfaces and parameters, and component presentation information.
  • the component triggering events include, for example, click (click ), double click (doubleclick ), tap ( tap ), swipe ( swipe ), and the like;
  • the interactive functions and parameters supported by the component are setData(data), getData(), hideQ , getLocation(), etc.;
  • the external interaction function attribute data format is, for example:
  • Icon "", / / is used to display the icon corresponding to the API component
  • the component presentation information includes, for example, a layout, and/or a style, and/or a format, and/or data, and/or visible, and/or an index. , and / or width (width), and / or height (height) and so on.
  • attributes of user-designable components include, for example, component interface presentation format, component interface presentation data, component display hierarchy, component location coordinates, component trigger event name, component external interaction interface name, and interface-related parameter names, And component types, etc.
  • the device that creates the application obtains the attribute value of the component attribute input by the user, and updates the attribute value of the obtained component attribute to the predefined component model.
  • Initialized property values for each component property are predefined in the predefined component model, and the initialized property value can be empty.
  • the component model is pre-defined as follows: ⁇ ID: "", //Component key identifier
  • Width "", / / position coordinates of the component (horizontal)
  • Step 102 mapping a component model to a functional component model, and according to the component interface primitive Graphically displaying the functional component model as a functional component primitive, and graphically establishing an association relationship between different functional component primitives in the application to be created, and according to different ones of the applications to be created
  • the relationship between the functional component primitives generates a business function model
  • the functional component primitive includes a functional component interface primitive and a functional component attribute primitive attached to the functional component interface primitive.
  • the device for creating an application is also provided in a graphical manner for the user to develop business functions, design and develop component association relationships, and generate a business function model.
  • the device for creating an application maps the component model obtained in step 101 to a functional component model, and graphically displays the functional component model as a functional component primitive.
  • the displayed functional component graphic element includes a functional component interface primitive and a functional component property primitive, wherein the functional component interface primitive is used to identify the functional component model, which may be displayed in the same manner as the corresponding component model in the component interface.
  • the functional component attribute primitives are generated according to the event and function attributes corresponding to the functional component model, and are attached to the functional component interface primitives or overlapped on the functional component interface primitives.
  • the user operates the functional component primitives according to the implementation process of the application to be created by creating a human-computer interaction interface of the application, such as labeling the functional component primitives, or dragging the functional component primitives.
  • the device that creates the application acquires the user's operation on the graphical function component primitive, and determines, according to the operation of the user, the association relationship between the functional component elements of the different functions in the application to be created, for example, the execution order. .
  • the device that creates the application can generate a business function model according to the functional component elements and the determined association relationship between the functional component elements.
  • Step 103 Generate executable code of the application according to the component model and the business function model.
  • the device for creating an application After executing the foregoing steps 101 and 102, the device for creating an application generates an executable application in the form of code according to the component model and the business function model, and by loading and running the executable application, the corresponding application service can be provided.
  • the method for creating an application creates a graphical functional component primitive by using a component model configured by a user through a graphical component interface, and determines, when the application is implemented, according to a user operation of the graphical functional component graphic element.
  • the relationship between the functional component primitives; the functional component model and the association relationship are also combined to generate a business function model for characterizing the program function, and according to the component Model and business function models that generate executable code for the application. Therefore, the combination of component design and business function design realizes that in the complete application creation process, the user develops zero code based on the visual interface, and simplifies the application creation process, and the application creation and development efficiency is high.
  • a process of acquiring a component value of a component attribute of a user configuration, and generating a component model according to the attribute value of the component attribute for example: creating an application device according to FIG. 2
  • the process shown detects changes in component properties, records the changed property values, and updates the corresponding property values in the component model to the changed values.
  • 2 is a schematic flowchart diagram of an example of updating a component model in a method for creating an application according to an embodiment of the present invention. As shown in Figure 2, the following steps are included:
  • Step 201 Obtain component metadata of the corresponding component model according to the type and name of the component selected by the user.
  • Step 202 According to the obtained component metadata, the graphical attribute attribute exhibits an attribute item, and the presentation form is, for example, (attribute name, attribute value), and the attribute value is set to be editable;
  • Step 203 Obtain a changed attribute value.
  • Step 204 Update the corresponding attribute in the component model to the changed attribute value.
  • the pre-defined primitives of the component model in the component interface are rendered according to the component model, to obtain corresponding component interface primitives, including:
  • the component interface primitive is generated according to the component model code.
  • the component model is mapped to a functional component model, and the functional component model is graphically displayed as a functional component graphic according to the component interface primitive, including :
  • Obtaining a key identifier of the functional component according to a component key identifier of the component model The function component presentation code; or, according to the component value of the component presentation component of the component model corresponding to the component key identifier, and the property value of the component interface presentation data, generating a function component presentation code corresponding to the key identifier of the functional component;
  • the function component primitive is rendered according to the function component presentation code.
  • the device for creating an application dynamically generates a corresponding functional component model according to the generated component model
  • the functional component model mainly includes the following attributes: a functional component key identifier (ID);
  • ID a functional component key identifier
  • the component presentation code (the primitive presentation format, the primitive presentation data, the primitive icon, the primitive size), and the effect of the presentation is consistent with the component design effect;
  • the functional component type UI component/API component;
  • the interaction supported by the functional component Functions and parameters trigger events supported by the function components; display level zindex values of the function components; and position coordinates corresponding to the function components.
  • the functional component model definition is for example:
  • FIG. 3 is a schematic flowchart diagram of an example of generating a functional component model in a method for creating an application according to an embodiment of the present invention. As shown in Figure 3, the following steps are included:
  • Step 301 acquiring a component model
  • Step 302 parsing a component model
  • Step 303 Map component attributes of the component model to function component attributes of the function component model; and generate a function component key identifier of the function component model according to the component key identifier of the component model;
  • the success key component key identifier to add a random string to the component key identifier of the component model, the success key component key identifier.
  • Step 304 Set a function component event attribute of the function component model (ie, a design-supportable event supported by the component) as a component event attribute of the component model (ie, a component trigger event name);
  • Step 305 setting a function attribute of the function component (that is, a supported interaction function and a parameter) as a function of the component model (that is, a name of the component external interaction interface name and an interface-related parameter);
  • Step 306 Acquire, according to the component key identifier of the component model, a function component presentation code corresponding to the key identifier of the function component; or, according to a component model of the component model corresponding to the component key identifier, display a property value and a component of the format
  • the interface displays the attribute value of the data, and generates a function component presentation code corresponding to the key identifier of the function component;
  • Step 307 setting a function component display hierarchy to a component display hierarchy
  • Step 308 Set the function component to display the position coordinate as the component display position coordinate; Step 309, save the function component model that has been set above.
  • the mapping relationship between the functional component and the component is established according to the key identifier of the functional component and the key identifier of the component, and the position coordinates, the display hierarchy and the function are displayed according to the functional component corresponding to the functional component model.
  • the component exposes the code and automatically presents the functional components.
  • the automatic presentation function component specifically includes: a graphic operation interface for calling a drawing tool preset in the terminal (for example, Canvas or SVG, etc.), according to a position coordinate corresponding to the key identifier of the component, at a position coordinate corresponding to the functional component interface , according to the function component presentation code, draw The functional component interface primitive; and automatically associates the functional component attribute primitive.
  • the component attribute of the component model is automatically associated with the attribute of the function component interface primitive, and the functional component component unit that graphically displays the component event and the function attribute is automatically generated according to the event and function attribute corresponding to the function component, and is attached. Displayed around the functional component interface primitives or overlaid on the functional component interface primitives, that is, functional component property primitives.
  • the process of automatically associating the functional component attribute primitives is, for example, mapping the component attributes of the component model to the functional component attribute primitives.
  • FIG. 4 is a schematic flowchart diagram showing an example of displaying functional component attribute primitives in a method for creating an application according to an embodiment of the present invention. As shown in Figure 4, the following steps are included:
  • Step 401 reading a function component event attribute
  • Step 402 Add a component presentation unit around the function component interface element for each event;
  • Step 403 the component display unit text information added in step 402 is the event name; step 404, adding an icon for identifying the event to the component presentation unit added in step 402; Step 405, reading the function attribute corresponding to the function component;
  • Step 406 adding a component presentation unit, that is, a function component presentation unit, around each of the function component interface elements for each function;
  • Step 407 the component presentation unit text information added in step 406 is a function method name; Step 408, adding an icon corresponding to the icon function attribute to the component presentation unit added in step 406;
  • step 409 all parameter component units are added around the feature presentation unit, and the text is set as the parameter name.
  • the three-dimensional display space of the drawing tool preset in the terminal may be utilized.
  • the hierarchical display according to the component display hierarchy of the user configuration includes: retrieving all functional component primitives whose component types are APIs; setting the display hierarchy of the functional component interface primitives of the API type to the lowest level value, to The bottom level shows the functional component interface of the API type
  • the display level of the input and output attribute primitives corresponding to the interface component of the API type functional element is set to the display level of the functional component interface element of the API type plus 1 to the functional component interface primitive of the API type
  • the auxiliary input and output attribute primitives are superimposed on the top; all functional component primitives whose component types are UI are retrieved; and the functional component primitives of the UI type are displayed according to the display hierarchy of the functional component primitives of the UI type.
  • the user can also control the function component primitives to be in a display state or a hidden state by modifying the display hierarchy of the function component primitives.
  • the method of creating an application according to an embodiment of the present invention provides a more intuitive and visual display of function component primitives.
  • the association relationship between different functional component primitives in the application to be created is graphically established according to the operation of the functional component primitive by the user. , including:
  • an annotation color message for color-labeling the function component graphic element receives, by the user, an annotation color message for color-labeling the function component graphic element, where the annotation color message includes a label color, an annotation time stamp, and a function component key identifier corresponding to the function component graphic element;
  • an annotation sequence code for indicating the application function logic is automatically generated.
  • FIG. 5 is a schematic flowchart diagram of an example of graphically establishing an association relationship between different functional component primitives in the application to be created in the method for creating an application according to an embodiment of the present invention. As shown in Figure 5, the following steps are included:
  • Step 501 Receive a user click on a function component graphic element
  • Step 502 displaying a color panel
  • Step 503 receiving a color selected by a user;
  • Step 504 modifying the foreground color of the function component graphic element to a color selected by the user (ie, marking the color);
  • Step 505 recording a key component of the functional component of the colored functional component, a label color, and an annotation time stamp;
  • Step 506 Analyze the execution order of the business function according to the user's labeling order of the different functional component primitives, and automatically generate the labeling order code corresponding to each functional component primitive.
  • Step 507 Automatically add a container element on the function component primitive, and set a text of the container element to the labeling order code.
  • a user can perform setting of an application execution logic by color-charging a function component graphic element, and the program function development efficiency is high, especially when the function component graphic element is displayed as a three-dimensional model, This method of color labeling makes the graphical display clearer.
  • the user in addition to using the flowchart shown in FIG. 5 to establish an association relationship between the functional component primitives, the user may also perform a drag operation by receiving a user.
  • the automatic drawing line connects the source function component primitive and the target function component primitive corresponding to the drag operation, and records the association relationship between the functional component primitives.
  • the user can complete the setting of the application execution logic by directly dragging and dropping the function component graphic element, which is more intuitive and simple.
  • generating a service function model according to an association relationship between different functional component primitives in the application to be created including: according to the application to be created An association relationship between different functional component primitives, generating a functional component primitive association sequence;
  • a business function model is generated based on the primitive association sequence, the component model, and the mapping relationship between the component model and the functional component primitives.
  • the functional component primitive association sequence is defined as follows:
  • the business function model is defined as follows:
  • the association relationship between different functional component primitives in the graphically created application to be created is layered by a tree structure or Graded display.
  • the generating executable code of the application according to the component model and the business function model includes:
  • FIG. 6 is a schematic structural diagram of an apparatus for creating an application according to an embodiment of the present invention.
  • the device that creates the application is placed on the terminal with the display device.
  • the device 60 for creating an application includes a component model 61, a component design module 62, a function design module 63, and a code generation module 64, wherein: the component design module 62 is configured to receive attributes of user-configured component attributes. a value, according to the attribute value of the component attribute, generating a component model, and rendering a predefined primitive of the component model in the component interface according to the component model, to obtain a component interface diagram corresponding to the attribute value of the component attribute Yuan
  • the function design module 63 is configured to map the component model into a functional component model, and graphically display the functional component model as a functional component graphic element according to the component interface graphic element, according to the user And the graphically establishing an association relationship between the different functional component primitives in the application to be created, and generating a business function according to the association relationship between the different functional component graphic elements in the application to be created a function component graphic element includes a functional component interface primitive and a functional component attribute primitive attached to the functional component interface primitive;
  • the code generating module 64 is configured to generate executable code of the application to be created according to the component model and the business function model.
  • An apparatus for creating an application according to an embodiment of the present invention creates a graphical functional component primitive by using a component model configured by a user through a graphical component interface, and determines, when the application is implemented, according to a user operation of the graphical functional component graphic element, The association relationship between the functional component primitives; the business component model for characterizing the program function is also generated by combining the functional component primitives and the association relationship, and the executable code of the application is generated according to the component model and the business function model. Therefore, the combination of component design and business function design realizes that in the complete application creation process, the user develops based on the graphical interface zero code, and simplifies the application creation process, and the application creation efficiency is high.
  • the device for creating an application in the embodiment of the present invention may further include a service running engine for running the executable code generated by the code generating module to provide an application service to the user.
  • the component attributes include: a component interface presentation format, a component interface presentation data, a component display hierarchy, a component location coordinate, a component trigger event name, a component external interaction interface name, and The name of the interface-related parameter, and the component type.
  • the component design module is specifically configured to:
  • the function design module is specifically configured to:
  • the functional component interface pair At the position coordinates of the application, the code component is represented by the function component.
  • the function design module is further used to:
  • the function design module is further used to:
  • the three-dimensional model of the functional component primitives is automatically modeled by the three-dimensional presentation space capability of the drawing tool preset in the terminal, and hierarchically displayed according to the user-configured component display hierarchy.
  • the function design module is further used to:
  • the display level of the input and output attribute primitive corresponding to the function component interface primitive is set to 1 for the display level of the functional component interface primitive of the API type, to be superimposed on top of the functional component interface primitive of the API type
  • An auxiliary input and output attribute primitive; a function component primitive whose all component types are UIs are retrieved; and a functional component primitive of the UI type is displayed according to a display hierarchy of the functional component primitives of the UI type.
  • the function design module is further configured to:
  • the function component primitives are controlled to be in a displayed state or a hidden state by tampering with the display hierarchy of the functional component primitives.
  • the function design module is further used to:
  • an annotation color message for color-labeling the function component graphic element receives, by the user, an annotation color message for color-labeling the function component graphic element, where the annotation color message includes a label color, an annotation time stamp, and a function component key identifier corresponding to the function component graphic element; Generating an element labeling sequence according to the label color, the label time stamp, and the function component key identifier corresponding to the function component graphic element;
  • the function design module is further configured to:
  • an annotation sequence code for indicating the application function logic is automatically generated.
  • the function design module is further configured to:
  • a container element is automatically added to the functional component primitive, and the text of the container element is set to the annotation sequential code.
  • the function design module is further used to:
  • the function design module is further used to:
  • the function design module is further used to:
  • the graphically established The association between functional component primitives is layered or hierarchically displayed in a tree structure.
  • the function component graphic element has the same display effect as the corresponding component interface graphic element.
  • the code generating module is used to:
  • Photographing service calling the photo API component by clicking a button, and displaying the photographed photo on the WEB service on the image component, and implementing the service through JavaScript and CSS.
  • a picture UI component a button UI component, a photo
  • API component
  • FIG. 7 is a schematic flowchart of an example 1 of an apparatus for creating an application for creating an application according to an embodiment of the present invention. As shown in FIG. 7, the method includes:
  • Step 701 The component design module records a user-designed picture UI component, a button UI component, Taking photos of the API component and updating the pre-stored component model;
  • the predefined component model includes a UI component, an API component, and a model operation interface.
  • FIG. 8 is a flow chart showing an example of a device update component model for creating an application to which an embodiment of the present invention is applied. As shown in Figure 8, the following steps are included:
  • Step 801 The component design module sends a component metadata acquisition request to the model operation interface according to the type and name of the component selected by the user.
  • Step 802 The model operation interface reads the corresponding component metadata according to the type and name of the component selected by the user, and encapsulates the component metadata message in a JSON format.
  • Step 803 The model operation interface returns the component metadata message to the component design module.
  • Step 804 the component design module displays the attribute item according to the acquired component metadata, and the presentation form is, for example, (attribute name, attribute value). And setting the attribute value to be editable;
  • Step 805 the component design module adds an edit listen event for the attribute value, and binds the component attribute change processing callback interface, and the callback interface format is as follows:
  • Step 806 the callback interface obtains the changed attribute value, and requests the model operation interface to update the component metadata.
  • Step 807 the model operation interface updates the attribute in the corresponding UI component/API component to the changed attribute value.
  • the user adds a picture UI component, a button UI component, and a camera API component to the component design module, for example, by dragging and dropping, and sets the component's presentation data, icon, style, and the like.
  • the component design module calls the model operation interface and automatically updates the attribute information corresponding to the component model. More specifically, the user design image UI component has the function name "changelmage” and the input parameter is "image”; the design button UI component (ie "photograph” button) has a trigger event name attribute of "onClick” and an alias attribute of "Click”; The name of the design photo API component is "TakePicture" and the corresponding icon. Step 702, the component design module requests the function design module to generate a functional component model of all components;
  • Step 703 The function design module generates a functional component model according to the component model, and establishes a mapping relationship between the component attribute of the component model and the functional component attribute of the functional component model;
  • the function design module requests the component design module to acquire component metadata of the picture UI component, the button UI component, and the photographing API component, and receives the component metadata information returned by the component design module in response to the request.
  • the returned metadata information is as follows:
  • the function design module parses the returned component metamodel to obtain component metadata of the image UI component, the button UI component, and the photographing API component, respectively.
  • the function design module uses the component key identifier (component ID identifier) + "function" to generate the key identifier of the function component corresponding to all components, which is generated as follows: Picture UI function component identifier is: "objectl function";
  • the button UI function component is identified as: "object2 function";
  • the camera API function component is identified as: "object3 function”.
  • the functional component of the function design module sets the "photograph” button to support the event as "click”; setting the image UI function component supports the function attribute of the user-designed picture UI component in step 701, namely:
  • the functional component of the camera API component is shown as:
  • the function design module sets the display level Zindex value of each function component to the Zindex attribute value of the user-designed component. For example, set the Zindex value of the picture UI function component to 1, set the Zindex value of the button UI function component to 2, and set the Zindex value of the camera API function component to 3.
  • the function design module sets the display position attribute value of each function component to the display position attribute value of the component designed by the user.
  • the X attribute value of the picture UI function component is 124px
  • the y attribute value is 219px
  • the X attribute value of the button UI function component is 124px
  • the y attribute value is 319px
  • the X attribute value of the camera API function component is 124px
  • the y attribute value is 419px.
  • the functional design module completes the generation of the functional component model, and saves the generated Picture UI function component, button UI function component and camera API function component.
  • Step 704 The function design module establishes a mapping relationship according to the key identifier of the component and the key identifier of the functional component;
  • mapping relationship is as follows:
  • Step 705 graphically displaying the functional component model to the functional design module
  • a DIV container element is added for each functional component model, the position of the added DIV container element is the value of the coordinate attribute (x, y) of the functional component model, and the ID of the DIV container element is set to
  • the function component ID identifies the innerHTML code of the DIV container element as the HTML code of the functional component model, and the final presentation effect is exactly the same as that of the component in the component design module.
  • Step 706 automatically associating the function component model attribute, and graphically mapping to the right side of the functional component of the graphical display (ie, the functional component interface primitive);
  • the specific process includes, for example: the function design module reads the event attribute value corresponding to the photo button from the function component model, that is, "click”; adds a DIV presentation container to the right of the photo button function component; and sets the DIV text (text) attribute to " Click”; adds an image (IMG) element Uniform/Universal Resource Locator (URL), "htt ://localhost/resources/gear.png", to identify the event container as an event.
  • IMG Uniform/Universal Resource Locator
  • Function component Read the function attribute corresponding to the camera API function component, the attribute value refers to the API component metadata in the return message; add a DIV container on the right side of the camera API function design component; set the DIV text attribute to "output”; to display the DIV
  • the container adds an IMG element URL, "htt://localhost/resources/output.png", to identify the functional component as an API output unit.
  • Step 707 The function design module records a function component association relationship that is designed by the user by dragging the function component graphic element, and generates a function component association sequence.
  • the user automatically draws the line connection source and the target component by dragging the function component primitive to the target and the associated component, completes the function component association, and establishes an association relationship, and generates a success component association sequence.
  • the generated functional component association sequence is, for example:
  • Step 708 the function design module records the function design display effect and the function component model, the serialization function design container code JSON (JavaScript Object Notation) format string and the serialization function component model JSON format string and save.
  • JSON JavaScript Object Notation
  • Step 709 The function design module generates a business function model according to the component model, the mapping relationship between the component model and the functional component model, and the functional component association sequence, and saves the business function model;
  • the generated business function model is as follows:
  • Step 710 the code generation module generates a hypertext markup according to the component model and the business function model.
  • Language Hypertext Markup Language, HTML
  • the function design module displays the function component primitives in a two-dimensional form, and by receiving a user drag operation on the function component primitives, establishing between the different functional component graphics elements in the application to be created.
  • the association relationship is also generated by combining functional component primitives and association relationships to generate a business function model for characterizing the program function, and generating executable code of the application according to the component model and the business function model. Therefore, the combination of component design and business function design realizes that in the complete application development process, the user develops the code based on the graphical interface, so that ordinary people can develop the program function simply and quickly, and the development efficiency is high.
  • FIG. 9 is a schematic diagram of a second example of a device creation application for creating an application according to an embodiment of the present invention. As shown in FIG. 9, the method includes:
  • Step 901 The component design module records the user-designed picture UI component, the button UI component, and the attribute information of the camera API component, generates a component model, and renders the corresponding predefined primitive according to the component model, and regenerates the component interface primitive;
  • Step 902 the component design module requests the function design module to generate a functional component model of all components
  • Step 903 The function design module generates a functional component model according to the component model.
  • Step 904 The function design module establishes a mapping relationship according to the key identifier of the component and the key identifier of the functional component;
  • step 901 904 can be performed in the same manner as in the first example.
  • Step 905 displaying the functional component model to the functional design module in a 3D presentation style; specifically, adding a DIV container element to each functional component model in the functional design module, and adding the position of the added DIV container element to the functional component model
  • the effect is exactly the same, and the style of the container of the API component is reset.
  • the value of the zindex attribute is 0.
  • the camera API is used as the underlying presentation.
  • the style attribute of the function component container is set, and the 3D presentation style of CSS3 is added to make the functional component layered and displayed in 3D.
  • Add style CSS code for example: perspective: 500px;
  • Step 906 automatically associating the functional component model attribute, and graphically mapping to the edge directly above the functional component of the graphical display (ie, the functional component interface primitive);
  • the function design module reads the event attribute value corresponding to the photo button from the function component model, that is, "click”; adds a DIV presentation container at the upper left of the photo button function component; sets the DIV text (text) attribute to " Click”; Add CSS3 stereo style to the event container to make the event unit stereoscopic.
  • Step 907 The function design module records that the user associates the function component with the color of the function component, and creates a functional component association sequence.
  • the function design module analyzes the business function steps according to the sequence of the element annotation, and automatically labels the sequence code to generate the function component association sequence.
  • the click unit of the camera button function component is labeled as 1
  • the camera API function component is labeled 2
  • the picture function component is labeled 3
  • the generated function component association sequence ⁇ 1 J is: ⁇ obj ect2. click: object3.takePicture, object3. out: objectl ⁇
  • Step 908 the function design module records the function design display effect and the function component model, the serialization function design container code JSON (JavaScript Object Notation) format string and the serialization function component model JSON format string and save.
  • JSON JavaScript Object Notation
  • Step 909 the function design module generates a business function model according to the component model, the mapping relationship between the component model and the functional component model, and the functional component association sequence, and saves the business function model;
  • Step 910 The code generation module generates a Hypertext Markup Language (HTML) and a javascript code according to the component model and the business function model.
  • HTML Hypertext Markup Language
  • the function design module displays the functional component primitives in a three-dimensional form, and by receiving a color annotation operation of the functional component primitives by the user, establishing between the different functional component primitives in the application to be created.
  • the association relationship is also generated by combining functional component primitives and association relationships to generate a business function model for characterizing the program function, and generating executable code of the application according to the component model and the business function model. Therefore, the combination of component design and business function design realizes that in the complete application development process, the user develops the code based on the graphical interface, so that ordinary people can develop the program function simply and quickly, and the development efficiency is high.
  • FIG. 10 is a schematic structural diagram of an apparatus for creating an application according to another embodiment of the present invention.
  • the device that creates the application is placed on the terminal with the display device.
  • the apparatus 100 for creating an application includes a memory 110 and a processor 120 connected to the memory, wherein: the memory 110 stores a set of program codes, and the processor 120 is configured to call the program code stored in the memory 110. Used to do the following:
  • mapping the component model to a functional component model and graphically displaying the functional component model as a functional component graphic element according to the component interface graphic element, and graphically establishing the operation according to the operation of the functional component graphic element by the user Generating a relationship between the functional component primitives in the created application, and generating a business function model according to the association relationship between the different functional component primitives in the application to be created;
  • the functional component diagram The element includes a functional component interface primitive and a functional component attribute primitive attached to the functional component interface primitive;
  • the executable code of the application is generated according to the component model and the business function model.
  • the specific process of creating an application for creating an application in the embodiment of the present invention is the same as the method for creating an application in the embodiment of the present invention, and therefore is not described herein again.
  • An apparatus for creating an application creates a graphical functional component primitive by using a component model configured by a user through a graphical component interface, and determines, when the application is implemented, according to a user operation of the graphical functional component graphic element, The association relationship between the functional component primitives; the business component model for characterizing the program function is also generated by combining the functional component primitives and the association relationship, and the executable code of the application is generated according to the component model and the business function model. Therefore, the combination of component design and business function design enables users to develop zero-code based on graphical interface during the complete application creation process, and simplifies the application creation process, and the application creation efficiency is high.
  • the component attributes include: a component interface presentation format, a component interface presentation data, a component display hierarchy, a component location coordinate, a component trigger event name, a component external interaction interface name, and The name of the interface-related parameter, and the component type.
  • the processor is further configured to invoke a program code stored in a memory, and perform the following operations:
  • the component interface primitive is generated according to the component model code.
  • the processor is further configured to invoke a program code stored in a memory, and perform the following operations: Mapping component properties of the component model to functional component properties of the functional component model;
  • the code rendering function component primitive is displayed according to the function component.
  • the processor is further configured to invoke a program code stored in a memory, and perform the following operations:
  • the processor is further configured to invoke a program code stored in a memory, and perform the following operations:
  • the three-dimensional model of the functional component primitives is automatically modeled by the three-dimensional presentation space capability of the drawing tool preset in the terminal, and hierarchically displayed according to the user-configured component display hierarchy.
  • the processor is further configured to invoke a program code stored in a memory, and perform the following operations:
  • the display level of the input and output attribute primitive corresponding to the function component interface primitive is set to 1 for the display level of the functional component interface primitive of the API type, to be superimposed on top of the functional component interface primitive of the API type
  • An auxiliary input and output attribute primitive; a function component primitive whose all component types are UIs are retrieved; and a functional component primitive of the UI type is displayed according to a display hierarchy of the functional component primitives of the UI type.
  • the processor is further used to invoke The program code stored in the memory, do the following:
  • the function component primitives are controlled to be in a displayed state or a hidden state by tampering with the display hierarchy of the functional component primitives.
  • the processor is further configured to invoke a program code stored in a memory, and perform the following operations:
  • an annotation color message for color-labeling the function component graphic element receives, by the user, an annotation color message for color-labeling the function component graphic element, where the annotation color message includes a label color, an annotation time stamp, and a function component key identifier corresponding to the function component graphic element;
  • the processor is further configured to invoke a program code stored in a memory, and perform the following operations:
  • an annotation sequence code for indicating the application function logic is automatically generated.
  • the processor is further configured to invoke a program code stored in a memory, and perform the following operations:
  • a container element is automatically added to the functional component primitive, and the text of the container element is set to the annotation sequential code.
  • the processor is further configured to invoke a program code stored in a memory, and perform the following operations:
  • the processor is further configured to invoke a program code stored in a memory, and perform the following operations:
  • the processor is further configured to invoke a program code stored in a memory, and perform the following operations:
  • the association relationship between the different functional component primitives in the graphically created application to be created is hierarchical or hierarchical in a tree structure. Shown.
  • the function component graphic element has the same display effect as the corresponding component interface graphic element.
  • the processor is further configured to invoke a program code stored in a memory, and perform the following operations:
  • the executable code of the application is generated based on the instant rendering component code, the API function code, and the script code.
  • FIG. 11 is a schematic structural diagram of an apparatus for creating an application according to another embodiment of the present invention.
  • At least one processor 1101 e.g., a CPU
  • the processor 1101 is configured to execute executable modules, such as computer programs, stored in the memory 1106.
  • the memory 1106 may include a high speed random access memory (RAM: Random Access Memory), and may also include a non-volatile memory, such as at least one disk memory.
  • the communication connection between the system gateway and at least one other network element is implemented by at least one network interface 1105 (which may be wired or wireless), and may use an Internet, a wide area network, a local network, a metropolitan area network, or the like.
  • the memory 1106 stores a program 11061, and the program 11061 can be executed by the processor 1101.
  • the program includes: receiving an attribute value of a user-configured component attribute, generating a component model according to the attribute value of the component attribute, and Deriving a predefined primitive of the component model in the component interface according to the component model to obtain a component interface primitive corresponding to the property value of the component attribute; mapping the component model to a functional component model, and according to the The component interface primitive graphically displays the functional component model as a functional component primitive, and graphically establishes different functional component primitives in the application to be created according to the operation of the functional component primitive by the user.
  • Generating a business function model according to an association relationship between different functional component primitives in the application to be created; generating the application according to the component model and the business function model Executable code.
  • the aforementioned program can be stored in a computer readable storage medium.
  • the program when executed, performs the steps including the foregoing method embodiments; and the foregoing storage medium includes: a medium that can store program codes, such as a ROM, a RAM, a magnetic disk, or an optical disk.

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Stored Programmes (AREA)

Abstract

一种创建应用的方法及装置。该方法包括:接收用户配置的组件属性的属性值,根据组件属性的属性值生成组件模型,并根据组件模型渲染组件界面中的预定义图元,以获取与所述组件属性的属性值相应的组件界面图元;将组件模型映射为功能组件模型,并将其图形化显示为功能组件图元,根据用户对所述功能组件图元的操作,图形化建立待创建的应用中不同的所述功能组件图元之间的关联关系,并根据所述待创建的应用中不同的功能组件图元之间的关联关系生成业务功能模型;根据所述组件模型和所述业务功能模型,生成应用的可执行代码。本发明提供的创建应用的方法及装置,实现了全图形化零代码创建应用和开发程序功能。

Description

一种创 ^用的方法^置 技术领域
本发明涉及应用开发技术, 尤其涉及一种创建应用的方法及装置, 属于 计算机技术领域。 背景技术
随着移动互联网的迅猛发展,移动应用软件的开发面向广大的普通受众 是未来的一大必然趋势, 以使普通人员能够方便、 快速地实现移动应用软件 的开发。
但是目前的应用开发技术中, 虽然能够通过可视化界面技术, 使得开发 人员通过拖、 拽组件的方式完成界面设计, 但是在基于界面中的组件模型开 发程序功能时, 仍然需要开发人员以语言文字描述的形式进行配置, 即进行 代码开发。 这就需要应用开发者精通编程语言, 而且开发效率低。
因此, 现有技术已经不能满足需求, 基于可视化用户交互界面(UI )组 件模型如何进一步全图形化开发程序功能, 以使得普通人员也能简单、 快速 开发程序功能, 已经成为图形化开发领域研究的热点和难点。 发明内容
针对现有技术中存在的缺陷, 本发明实施例提供一种创建应用的方法及 装置, 以实现图形化创建应用。
第一方面, 提供一种创建应用的方法, 该方法应用在带有显示设备的终 端上, 包括:
接收用户配置的组件属性的属性值, 根据所述组件属性的属性值, 生成 组件模型, 并根据所述组件模型渲染组件界面中所述组件模型的预定义图 元, 以获取与所述组件属性的属性值相应的组件界面图元;
将所述组件模型映射为功能组件模型, 并根据所述组件界面图元将所述 功能组件模型图形化显示为功能组件图元,根据用户对所述功能组件图元的 操作, 图形化建立待创建的应用中不同的所述功能组件图元之间的关联关 系, 并根据所述待创建的应用中不同的所述功能组件图元之间的关联关系生 成业务功能模型;
根据所述组件模型和所述业务功能模型, 生成所述待创建的应用的可执 行代码。
在第一方面的第一种可能的实现方式中, 所述根据所述组件模型渲染组 件界面中所述组件模型的预定义图元, 以获取与所述组件属性的属性值相应 的组件界面图元, 具体包括:
根据所述组件属性中的组件界面展现格式的属性值及组件界面展现数 据的属性值, 生成组件模型代码;
根据所述组件模型代码, 生成所述组件界面图元。
在第一方面的第二种可能的实现方式中, 所述将组件模型映射为功能组 件模型, 并根据所述组件界面图元将所述功能组件模型图形化显示为功能组 件图元, 具体包括:
将所述组件模型的组件属性, 映射为所述功能组件模型的功能组件属 性;
将所述组件模型的组件关键标识, 映射为所述功能组件模型的功能组件 关键标识;
根据所述组件模型的组件关键标识, 获取所述功能组件关键标识对应的 功能组件展现代码; 或者, 根据所述组件关键标识对应的组件模型的组件展 现格式的属性值和组件界面展现数据的属性值, 生成所述功能组件关键标识 对应的功能组件展现代码;
根据所述组件关键标识对应的组件模型的位置坐标, 在功能组件界面对 应的位置坐标处, 4艮据所述功能组件展现代码渲染所述功能组件图元。
结合第一方面的第二种可能的实现方式,在第一方面的第三种可能的实 现方式中, 所述根据所述组件关键标识对应的组件模型的位置坐标, 在功能 组件界面对应的位置坐标处, 根据所述功能组件展现代码渲染功能组件图 元, 具体包括: 调用所述终端中预置的绘图工具的图形操作接口,根据所述组件关键标 识对应的位置坐标, 在功能组件界面对应的位置坐标处, 根据所述功能组件 展现代码渲染功能组件界面图元;
根据所述组件模型的组件属性, 自动联想映射所述功能组件属性图元。 在第一方面的第四种可能的实现方式中, 所述将所述功能组件模型图形 化显示为功能组件图元, 具体包括:
利用所述终端中预置的绘图工具的三维展现空间能力, 自动建模所述功 能组件图元的三维模型, 并根据用户配置的组件显示层次进行分层显示。
结合第一方面的第四种可能的实现方式,在第一方面的第五种可能的实 现方式中, 所述根据用户配置的组件显示层次进行分层显示, 具体包括: 检索所有组件类型为应用程序交互接口 API的功能组件图元; 将 API 类型的功能组件界面图元的显示层次设置为最底层值, 以在最底层显示所述 API类型的功能组件界面图元; 将 API类型的功能组件界面图元对应的输入 输出属性图元的显示层次,设置为所述 API类型的功能组件界面图元的显示 层次加 1, 以在所述 API类型的功能组件界面图元的上方叠加显示附属的输 入输出属性图元;
检索所有组件类型为可视化用户交互界面 UI类型的功能组件图元; 根 据所述 UI类型的功能组件图元的显示层次,显示所述 UI类型的功能组件图 元。
在第一方面的第六种可能的实现方式中, 所述根据用户对所述功能组件 图元的操作, 图形化建立待创建的应用中不同的所述功能组件图元之间的关 联关系, 具体包括:
接收用户为所述功能组件图元进行颜色标注的标注颜色消息, 所述标注 颜色消息包括标注颜色、 标注时间戳, 以及功能组件图元对应的功能组件关 键标识;
根据所述标注颜色、 标注时间戳, 以及功能组件图元对应的功能组件关 键标识, 生成图元标注序列;
根据所述图元标注序列,确定所述待创建的应用中不同的所述功能组件 图元之间的关联关系。 结合第一方面的第六种可能的实现方式,在第一方面的第七种可能的实 现方式中, 所述根据所述图元标注序列, 确定所述待创建的应用中不同的所 述功能组件图元之间的关联关系, 具体包括:
将所述功能组件图元的前景色, 修改为所述标注颜色;
根据所述功能组件图元的前景色, 以及所述功能组件图元对应的标注时 间戳, 自动生成用于指示应用功能逻辑的标注顺序码。
结合第一方面或第一方面的第一至第七中任一种可能的实现方式, 在第 一方面的第八种可能的实现方式中, 所述根据所述待创建的应用中不同的所 述功能组件图元之间的关联关系生成业务功能模型, 具体包括:
根据所述待创建的应用中不同的所述功能组件图元之间的关联关系, 生 成功能组件图元关联序列;
根据所述图元关联序列、所述组件模型以及所述组件模型与功能组件图 元的映射关系, 生成所述业务功能模型。
结合第一方面或第一方面的第一至第七中任一种可能的实现方式, 在第 一方面的第九种可能的实现方式中, 所述根据所述组件模型和所述业务功能 模型, 生成应用的可执行代码, 具体包括:
从所述业务功能模型中, 读取可视化用户交互界面 UI类型的功能组件 图元的属性; 从所述组件界面中对应的 UI组件的组件模型中, 获取与所述
UI类型的功能组件图元对应的已配置生成代码模板; 根据所述 UI类型的功 能组件图元的属性, 与所述对应的已配置生成代码模板, 生成即时渲染组件 代码;
从所述业务功能模型中,读取应用程序交互接口 API类型的功能组件图 元的属性; 从所述组件界面中对应的 API组件的组件模型中, 获取与所述 API类型的功能组件图元对应的已配置生成代码模板, 并根据 API组件声明 的引用库生成引用类库代码; 才艮据所述 API类型的功能组件图元的属性、 所 述对应的已配置生成代码模板以及所述引用类库代码, 生成 API功能代码; 根据所述功能组件图元的属性和所述待创建的应用中不同的所述功能 组件图元之间的关联关系, 生成用于控制所述 UI组件和所述 API组件交互 的脚本代码; 根据所述即时渲染组件代码、 所述 API功能代码以及所述脚本代码, 生 成所述应用的可执行代码。
第二方面, 提供一种创建应用的装置, 设置在带有显示设备的终端上, 包括组件模型、 组件设计模块、 功能设计模块以及代码生成模块, 其中: 所述组件设计模块, 用于接收用户配置的组件属性的属性值, 根据所述 组件属性的属性值, 生成组件模型, 并根据所述组件模型渲染组件界面中所 述组件模型的预定义图元, 以获取与所述组件属性的属性值相应的组件界面 图元;
所述功能设计模块, 用于将所述组件模型映射为功能组件模型, 并根据 所述组件界面图元将所述功能组件模型图形化显示为功能组件图元,根据用 户对所述功能组件图元的操作, 图形化建立待创建的应用中不同的所述功能 组件图元之间的关联关系, 并根据所述待创建的应用中不同的所述功能组件 图元之间的关联关系生成业务功能模型;
所述代码生成模块, 用于根据所述组件模型和所述业务功能模型, 生成 所述待创建的应用的可执行代码。
在第二方面的第一种可能的实现方式中, 所述组件设计模块具体用于: 根据所述组件属性中的组件界面展现格式的属性值及组件界面展现数 据的属性值, 生成组件模型代码;
根据所述组件模型代码, 生成所述组件界面图元。
在第二方面的第二种可能的实现方式中, 所述功能设计模块具体用于: 将所述组件模型的组件属性, 映射为所述功能组件模型的功能组件属 性;
将所述组件模型的组件关键标识, 映射为所述功能组件模型的功能组件 关键标识;
根据所述组件模型的组件关键标识, 获取所述功能组件关键标识对应的 功能组件展现代码; 或者, 根据所述组件关键标识对应的组件模型的组件展 现格式的属性值和组件界面展现数据的属性值, 生成所述功能组件关键标识 对应的功能组件展现代码; 根据所述组件关键标识对应的组件模型的位置坐标, 在功能组件界面对 应的位置坐标处, 4艮据所述功能组件展现代码渲染所述功能组件图元。
结合第二方面的第二种可能的实现方式,在第二方面的第三种可能的实 现方式中, 所述功能设计模块进一步用于:
调用所述终端中预置的绘图工具的图形操作接口,根据所述组件关键标 识对应的位置坐标, 在功能组件界面对应的位置坐标处, 根据所述功能组件 展现代码渲染功能组件界面图元;
根据所述组件模型的组件属性, 自动联想映射所述功能组件属性图元。 在第二方面的第四种可能的实现方式中, 所述功能设计模块进一步用 于:
利用所述终端中预置的绘图工具的三维展现空间能力, 自动建模所述功 能组件图元的三维模型, 并根据用户配置的组件显示层次进行分层显示。
结合第二方面的第四种可能的实现方式,在第二方面的第五种可能的实 现方式中, 所述功能设计模块具体用于:
检索所有组件类型为应用程序交互接口 API的功能组件图元; 将 API 类型的功能组件界面图元的显示层次设置为最底层值, 以在最底层显示所述 API类型的功能组件界面图元; 将 API类型的功能组件界面图元对应的输入 输出属性图元的显示层次,设置为所述 API类型的功能组件界面图元的显示 层次加 1, 以在所述 API类型的功能组件界面图元的上方叠加显示附属的输 入输出属性图元;
检索所有组件类型为可视化用户交互界面 UI的功能组件图元; 根据所 述 UI类型的功能组件图元的显示层次, 显示所述 UI类型的功能组件图元。
在第二方面的第六种可能的实现方式中, 所述功能设计模块进一步用 于:
接收用户为所述功能组件图元进行颜色标注的标注颜色消息, 所述标注 颜色消息包括标注颜色、 标注时间戳, 以及功能组件图元对应的功能组件关 键标识;
根据所述标注颜色、 标注时间戳, 以及功能组件图元对应的功能组件关 键标识, 生成图元标注序列; 根据所述图元标注序列,确定所述待创建的应用中不同的所述功能组件 图元之间的关联关系。
结合第二方面的第六种可能的实现方式,在第二方面的第七种可能的实 现方式中, 所述功能设计模块进一步用于:
将所述功能组件图元的前景色, 修改为所述标注颜色;
根据所述功能组件图元的前景色, 以及所述功能组件图元对应的标注时 间戳, 自动生成用于指示应用功能逻辑的标注顺序码。
结合第二方面或第二方面的第一至第七中任一种可能的实现方式, 在第 二方面的第八种可能的实现方式中, 所述功能设计模块进一步用于:
根据所述待创建的应用中不同的所述功能组件图元之间的关联关系, 生 成功能组件图元关联序列;
根据所述图元关联序列、所述组件模型以及所述组件模型与功能组件图 元的映射关系, 生成所述业务功能模型。
结合第二方面或第二方面的第一至第七中任一种可能的实现方式, 在第 二方面的第九种可能的实现方式中, 所述代码生成模块, 具体用于:
从所述业务功能模型中, 读取可视化用户交互界面 UI类型的功能组件 图元的属性; 从所述组件界面中对应的 UI组件的组件模型中, 获取与所述 UI类型的功能组件图元对应的已配置生成代码模板; 根据所述 UI类型的功 能组件图元的属性, 与所述对应的已配置生成代码模板, 生成即时渲染组件 代码;
从所述业务功能模型中,读取应用程序交互接口 API类型的功能组件图 元的属性; 从所述组件界面中对应的 API组件的组件模型中, 获取与所述 API类型的功能组件图元对应的已配置生成代码模板, 并根据 API组件声明 的引用库生成引用类库代码; 才艮据所述 API类型的功能组件图元的属性、 所 述对应的已配置生成代码模板以及所述引用类库代码, 生成 API功能代码; 根据所述功能组件图元的属性和所述待创建的应用中不同的所述功能 组件图元之间的关联关系, 生成用于控制所述 UI组件和所述 API组件交互 的脚本代码; 根据所述即时渲染组件代码、 所述 API功能代码, 以及所述脚本代码, 生成所述应用的可执行代码。
根据本发明实施例提供的创建应用的方法及装置, 利用用户通过图形化 组件界面配置的组件模型创建图形化的功能组件图元, 并根据用户对图形化 的功能组件图元的操作,确定实现应用时,各功能组件图元之间的关联关系; 还结合功能组件图元和关联关系生成用于表征程序功能的业务功能模型, 并 根据组件模型和业务功能模型, 生成应用的可执行代码。 因此, 将组件设计 与业务功能设计有机结合, 实现了在完整的应用创建过程中, 用户基于可视 化界面零代码开发, 并且简化了应用的创建过程, 应用的开发创建效率高。 附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案, 下面将对实 施例或现有技术描述中所需要使用的附图作简单地介绍, 显而易见地, 下面 描述中的附图仅仅是本发明的一些实施例, 对于本领域普通技术人员来讲, 在不付出创造性劳动性的前提下, 还可以根据这些附图获得其他的附图。
图 1为本发明实施例的创建应用的方法的流程示意图;
图 2为本发明实施例的创建应用的方法中更新组件模型的一个示例的流 程示意图;
图 3为本发明实施例的创建应用的方法中生成功能组件模型的一个示例 的流程示意图;
图 4为本发明实施例的创建应用的方法中展现功能组件属性图元的一个 示例的流程示意图;
图 5为本发明实施例的创建应用的方法中图形化建立所述待创建的应用 中不同的功能组件图元之间的关联关系的一个示例的流程示意图;
图 6为本发明实施例的创建应用的装置的结构示意图;
图 7为应用本发明实施例的创建应用的装置创建应用的示例一的流程示 意图;
图 8为应用本发明实施例的创建应用的装置更新组件模型的一个示例的 流程示意图;
图 9为应用本发明实施例的创建应用的装置创建应用的示例二的流程示 意图;
图 10为本发明另一实施例的创建应用的装置的结构示意图;
图 11为本发明另一实施例的创建应用的装置的结构示意图。 具体实施方式
本发明实施例的创建应用的方法应用在带有显示设备的终端上, 例如由 一个创建应用的装置来执行, 该创建应用的装置具有可视化界面, 即显示设 备, 用户通过对该可视化界面进行操作, 即可创建应用。 下面, 从创建应用 的装置的角度, 对本发明实施例的创建应用的方法进行说明。
图 1为本发明实施例的创建应用的方法的流程示意图。 如图 1所示, 该 创建应用的方法包括:
步骤 101, 接收用户配置的组件属性的属性值, 根据所述组件属性的属 性值, 生成组件模型, 并根据所述组件模型渲染组件界面中所述组件模型的 预定义图元, 以获取与所述组件属性的属性值相应的组件界面图元;
具体地, 创建应用的装置以图形化的方式, 向用户提供组件待设计的组 件属性, 并将用户的实时设计信息更新到预先定义的组件模型, 生成组件模 型, 再根据所述组件模型的属性渲染组件界面中组件模型对应的预定义图 元, 以获取相应的组件界面图元。 其中, 渲染的含义是指根据组件模型的属 性生成图形化图元。
其中, 组件模型提供的功能实体例如包括:
可视化用户交互界面 (User Interface, UI )组件: 定义界面表单元素实 体;
应用程序交互接口 (Application Program Interface, API )组件: 业务平 台提供或从第三方引入的数据处理能力组件; 和
模型操作接口: 根据组件信息读取或更新组件模型的接口;
用户可设计的组件的属性例如包括组件可以触发事件、组件对外交互接 口及参数、 以及组件展现信息三类属性。
其中, 组件触发事件例如包括单击 ( click )、 双击 (doubleclick ), 轻触 ( tap )、 滑动 ( swipe )等;
组件支持的交互功能及参数例如为 setData(data)、 getData() , hideQ , getLocation()等; 对外交互功能属性数据格式例如为:
{name: "",
alias: "",
icon: "", //用于显示 API组件对应的图标
input: {parameter: {name:"", alias: "", default:"", nullable: ""} }, 〃输 入
output: {name:"", alias: ""}//输出
}
组件展现信息例如包括布局 (layout ), 和 /或类型 ( style )、 和 /或格式 ( format ), 和 /或数据(data )、 和 /或可视( visible )、 和 /或索引 ( index )、 和 /或宽度( width )、 和 /或高度(height )等。
更为具体地, 用户可设计的组件的属性例如包括组件界面展现格式、 组 件界面展现数据、 组件显示层次、 组件的位置坐标、 组件触发事件名称、 组 件对外交互接口名称及接口相关参数的名称, 以及组件类型等。 创建应用的 装置获取用户输入的组件属性的属性值, 并将所获取的组件属性的属性值, 更新到预定义的组件模型。预定义的组件模型中预定义有各组件属性的初始 化属性值, 该初始化属性值可以为空。 例如, 组件模型预先定义如下: {ID: "", //组件关键标识
Name: "", //组件名称
Type: "UI/API", //组件类型, UI或 API
Icon: "", //图标格式
Width: "", //组件的位置坐标(横向)
Height: "",〃组件的位置坐标(纵向)
Zindex: "", //组件显示层次
Functions: {function:"对外交互功能属性数据格式,,},〃组件支持的交互功 能及参数
Events : { {name:"", alias:""}, { ... } }〃组件触发事件
}
步骤 102, 将组件模型映射为功能组件模型, 并根据所述组件界面图元 将所述功能组件模型图形化显示为功能组件图元, 图形化建立待创建的应用 中不同的所述功能组件图元之间的关联关系, 并根据所述待创建的应用中不 同的所述功能组件图元之间的关联关系生成业务功能模型;
其中, 所述功能组件图元包括功能组件界面图元和附属于所述功能组件 界面图元的功能组件属性图元。
具体地, 创建应用的装置还以图形化方式供用户开发业务功能, 设计开 发组件关联关系, 生成业务功能模型。 其中, 创建应用的装置将步骤 101获 得的组件模型, 映射为功能组件模型, 并将功能组件模型图形化显示为功能 组件图元。 所显示的功能组件图元包括功能组件界面图元和功能组件属性图 元,其中,功能组件界面图元用于标识功能组件模型,其可以与组件界面中, 对应的组件模型的显示方式相同, 功能组件属性图元是根据功能组件模型对 应的事件和功能属性生成的, 并附属展现在功能组件界面图元周围或重叠在 功能组件界面图元之上。
用户通过创建应用的装置的人机交互界面,根据待创建的应用的实现流 程, 对功能组件图元进行操作, 例如对功能组件图元进行标注, 或对功能组 件图元进行拖动操作等。创建应用的装置获取用户对图形化功能组件图元的 操作, 根据用户的操作, 确定在待创建的应用中, 实现不同功能的各功能组 件图元之间的关联关系, 例如为执行的先后次序。 创建应用的装置再根据各 功能组件图元, 以及所确定的各功能组件图元之间的关联关系, 即可生成业 务功能模型。
步骤 103, 根据所述组件模型和所述业务功能模型, 生成应用的可执行 代码。
具体地, 创建应用的装置在执行上述步骤 101和步骤 102后, 根据组件 模型和业务功能模型, 生成代码形式的可执行应用, 通过加载并运行可执行 应用, 即可提供相应的应用服务。
根据本发明实施例的创建应用的方法, 利用用户通过图形化组件界面配 置的组件模型创建图形化的功能组件图元, 并根据用户对图形化的功能组件 图元的操作, 确定实现应用时, 各功能组件图元之间的关联关系; 还结合功 能组件图元和关联关系生成用于表征程序功能的业务功能模型, 并根据组件 模型和业务功能模型, 生成应用的可执行代码。 因此, 将组件设计与业务功 能设计有机结合, 实现了在完整的应用创建过程中, 用户基于可视化界面零 代码开发, 并且简化了应用的创建过程, 应用的创建开发效率高。
进一步地, 在本发明实施例的创建应用的方法中, 接收用户配置的组件 属性的属性值,根据所述组件属性的属性值,生成组件模型的过程,例如为: 创建应用的装置按照图 2所示流程检测组件属性的改变,记录改变后的属性 值, 并更新组件模型中的对应的属性值为改变后的值。 其中, 图 2为本发明 实施例的创建应用的方法中更新组件模型的一个示例的流程示意图。 如图 2 所示, 包括以下步骤:
步骤 201, 根据用户选择设计的组件的类型和名称, 获取相应的组件模 型的组件元数据;
步骤 202, 根据所获取的组件元数据, 图形化分属性展现属性项, 展现 形式例如为 (属性名称、 属性值), 并设置属性值可编辑;
步骤 203, 获取变更的属性值;
步骤 204, 将组件模型中对应的属性更新为变更的属性值。
进一步地, 在本发明实施例的创建应用的方法中, 所述根据组件模型渲 染组件界面中所述组件模型的预定义图元, 以获取相应的组件界面图元, 包 括:
根据组件界面展现格式的属性值及组件界面展现数据的属性值, 生成组 件模型代码;
根据组件模型代码, 生成所述组件界面图元。
进一步地, 在本发明实施例的创建应用的方法中, 所述将组件模型映射 为功能组件模型, 并根据所述组件界面图元将所述功能组件模型图形化显示 为功能组件图元, 包括:
将所述组件模型的组件属性, 映射为所述功能组件模型的功能组件属 性;
将所述组件模型的组件关键标识, 映射为所述功能组件模型的功能组件 关键标识;
根据所述组件模型的组件关键标识, 获取所述功能组件关键标识对应的 功能组件展现代码; 或者, 4艮据所述组件关键标识对应的组件模型的组件展 现格式的属性值和组件界面展现数据的属性值, 生成所述功能组件关键标识 对应的功能组件展现代码;
根据所述组件关键标识对应的组件模型的位置坐标, 在功能组件界面对 应的位置坐标处, 根据所述功能组件展现代码, 渲染功能组件图元。
具体地, 在上述渲染功能组件图元的过程中, 创建应用的装置根据生成 的组件模型, 动态生成对应的功能组件模型, 该功能组件模型主要包括以下 属性: 功能组件关键标识 (ID ); 功能组件展现代码(图元展现格式、 图元 展现数据、 图元图标、 图元大小), 展示的效果和组件设计效果保持一致; 功能组件类型 ( UI组件 /API组件;); 功能组件支持的交互功能及参数; 功能 组件支持的触发事件; 功能组件的显示层次 zindex值; 以及功能组件对应显 示的位置坐标。
功能组件模型定义例如为:
{
ID:"",
UnitDisplayCode: "",
Type: ",,,
Events: "{event{name:"",alias: ""},{ ... } }",
Functions:
{
function: {
name:"",alias:"",
parameters:
{
parameter: {name:"",alias:"",default:""}
}
}
},
Zindex: "" Location: {x: "", y: ""}
}
图 3为本发明实施例的创建应用的方法中生成功能组件模型的一个示例 的流程示意图。 如图 3所示, 包括以下步骤:
步骤 301, 获取组件模型;
步骤 302, 解析组件模型;
步骤 303, 将所述组件模型的组件属性, 映射为功能组件模型的功能组 件属性; 并根据组件模型的组件关键标识, 生成功能组件模型的功能组件关 键标识;
具体地, 例如为将组件模型的组件关键标识, 添加任意字符串, 生成功 能组件关键标识。
步骤 304, 将功能组件模型的功能组件事件属性(即组件支持的可设计 的事件), 设置为组件模型的组件事件属性(即组件触发事件名称);
步骤 305, 将功能组件的功能属性(即支持的交互功能及参数), 设置为 组件模型的功能 (即组件对外交互接口名称及接口相关参数的名称);
步骤 306, 根据所述组件模型的组件关键标识, 获取所述功能组件关键 标识对应的功能组件展现代码; 或者, 4艮据所述组件关键标识对应的组件模 型的组件展现格式的属性值和组件界面展现数据的属性值, 生成所述功能组 件关键标识对应的功能组件展现代码;
步骤 307, 设置功能组件显示层次为组件显示层次;
步骤 308, 设置功能组件展现位置坐标为组件展现位置坐标; 步骤 309, 保存经过以上设置的功能组件模型。
经过图 3所示的流程, 生成功能组件模型后, 根据功能组件关键标识和 组件关键标识, 建立功能组件和组件的映射关系, 并根据功能组件模型对应 的功能组件展现位置坐标、 显示层次和功能组件展现代码, 自动展现功能组 件。
其中, 自动展现功能组件具体包括: 调用终端中预置的绘图工具(例如 为 Canvas或 SVG等 )的图形操作接口, 根据所述组件关键标识对应的位置 坐标, 在功能组件界面对应的位置坐标处, 根据所述功能组件展现代码, 绘 制功能组件界面图元; 并自动联想映射所述功能组件属性图元。 具体地, 基 于组件模型的组件属性, 自动联想所述功能组件界面图元的属性, 根据功能 组件对应的事件和功能属性, 自动生成图形化展示组件事件和功能属性的功 能组件部件单元, 并附属展现在功能组件界面图元周围或重叠在功能组件界 面图元之上, 即功能组件属性图元。 其中, 自动联想映射所述功能组件属性 图元的过程,例如为:将组件模型的组件属性一一映射为功能组件属性图元。
更为具体地, 图 4为本发明实施例的创建应用的方法中展现功能组件属 性图元的一个示例的流程示意图。 如图 4所示, 包括以下步骤:
步骤 401, 读取功能组件事件属性;
步骤 402, 分别为每个事件在功能组件界面图元周围增加一个部件展现 单元;
步骤 403, 设置步骤 402增加的部件展现单元文本信息为事件名; 步骤 404, 为步骤 402增加的部件展现单元增加标识事件的图标; 步骤 405, 读取功能组件对应的功能属性;
步骤 406, 分别为每个功能在功能组件界面图元周围增加一个部件展现 单元, 即功能部件展现单元;
步骤 407, 设置步骤 406增加的部件展现单元文本信息为功能方法名; 步骤 408, 为步骤 406增加的部件展现单元增加标识功能图标 /API组件 图标属性对应的图标;
步骤 409, 在功能部件展现单元周围增加所有参数部件单元, 并设置其 文本为参数名。
至此, 完成渲染功能组件图元的操作。
进一步地, 在本发明实施例的创建应用的方法中, 除釆用上述图 3和图 4所示的流程渲染功能组件图元之外, 还可以利用终端中预置的绘图工具的 三维展现空间能力, 自动建模所述功能组件图元的三维模型, 并根据用户配 置的组件显示层次进行分层显示。
其中, 所述根据用户配置的组件显示层次进行分层显示, 包括: 检索所有组件类型为 API的功能组件图元;将 API类型的功能组件界面 图元的显示层次设置为最底层值,以在最底层显示 API类型的功能组件界面 图元; 将 API 类型的功能组件界面图元对应的输入输出属性图元的显示层 次, 设置为 API类型的功能组件界面图元的显示层次加 1, 以在 API类型的 功能组件界面图元的上方叠加显示附属的输入输出属性图元; 检索所有组件 类型为 UI的功能组件图元; 才艮据 UI类型的功能组件图元的显示层次, 显示 UI类型的功能组件图元。其中,用户还可以通过修改功能组件图元的显示层 次, 控制功能组件图元处于显示状态或隐藏状态。
根据本发明实施例的创建应用的方法, 提供了更为直观、 形象的功能组 件图元显示。
进一步地, 在本发明实施例的创建应用的方法中, 所述根据用户对所述 功能组件图元的操作, 图形化建立所述待创建的应用中不同的功能组件图元 之间的关联关系, 包括:
接收用户为所述功能组件图元进行颜色标注的标注颜色消息, 所述标注 颜色消息包括标注颜色、 标注时间戳, 以及功能组件图元对应的功能组件关 键标识;
根据所述标注颜色、 标注时间戳, 以及功能组件图元对应的功能组件关 键标识, 生成图元标注序列;
根据所述图元标注序列,确定待创建的应用中不同的功能组件图元之间 的关联关系。
其中, 根据所述图元标注序列, 确定待创建的应用中不同的功能组件图 元之间的关联关系, 具体包括:
将所述功能组件图元的前景色, 修改为所述标注颜色;
根据所述功能组件图元的前景色, 以及所述功能组件图元对应的标注时 间戳, 自动生成用于指示应用功能逻辑的标注顺序码。
更为具体地, 图 5为本发明实施例的创建应用的方法中图形化建立所述 待创建的应用中不同的功能组件图元之间的关联关系的一个示例的流程示 意图。 如图 5所示, 包括以下步骤:
步骤 501, 接收用户对功能组件图元的点击;
步骤 502, 显示颜色面板;
步骤 503, 接收用户选定的颜色; 步骤 504, 将功能组件图元的前景色, 修改为用户选定的颜色 (即标注 颜色);
步骤 505, 记录着色的功能组件图元的功能组件关键标识、 标注颜色和 标注时间戳;
步骤 506, 根据用户对不同功能组件图元的标注顺序, 分析出业务功能 执行顺序, 自动生成与各功能组件图元对应的标注顺序码。
进一步, 还可以包括:
步骤 507, 在所述功能组件图元上自动增加容器元素, 并设置所述容器 元素的文本为所述标注顺序码。
根据本发明实施例的创建应用的方法, 用户通过对功能组件图元进行颜 色标注, 即可完成应用执行逻辑的设置, 程序功能开发效率高, 尤其当功能 组件图元显示为三维模型时, 通过这种颜色标注的方法, 使图形化显示效果 更为清晰。
进一步地, 在本发明实施例的创建应用的方法中, 除釆用上述图 5所示 的流程图形化建立各功能组件图元之间的关联关系之外,还可以通过接收用 户的拖动操作, 自动画线连接所述拖动操作对应的源功能组件图元和目标功 能组件图元, 记录各功能组件图元之间的关联关系。
根据本发明实施例的创建应用的方法, 用户通过直接对功能组件图元进 行拖拽操作, 即可完成应用执行逻辑的设置, 更为直观、 简便。
进一步地, 在本发明实施例的创建应用的方法中, 根据所述待创建的应 用中不同的所述功能组件图元之间的关联关系生成业务功能模型, 包括: 根据所述待创建的应用中不同的功能组件图元之间的关联关系, 生成功 能组件图元关联序列;
根据图元关联序列、 组件模型, 以及组件模型与功能组件图元的映射关 系, 生成业务功能模型。
其中, 功能组件图元关联序列例如定义如下:
{objectl .event:object2.method,objec2t.method.paral :object3,object2.out:obj ect4, ... }
其中, 用": "隔开不同的功能组件图元。 业务功能模型例如定义如下:
<功能逻辑>
<组件>
〈组件 ID></组件 ID>
<事件>
<事件名〉</事件名〉
<组件〉
〈组件 ID〉<血件 ID>
<功能 >
<调用优先级 ></调用优先级〉
<功能名 ><功能名 > <名称 ></名称 >
<值关联对象 >UI组件 ID(objectxxx)/xxxx</值关联对象〉 </参数〉
<输出〉
<组件 ID〉</组件 ID〉
</输出〉
</功能〉
</组件 >
</事件 >
〈血件〉
</功能逻辑>
进一步地, 在本发明实施例的创建应用的方法中, 所述图形化建立的所 述待创建的应用中不同的所述功能组件图元之间的关联关系,是以树形结构 分层或分级展示的。
进一步地, 在本发明实施例的创建应用的方法中, 所述根据所述组件模 型和所述业务功能模型, 生成应用的可执行代码, 包括:
从所述业务功能模型中, 读取 UI类型的功能组件图元的属性; 从所述 组件界面中对应的 UI组件的组件模型中,获取与所述 UI类型的功能组件图 元对应的已配置生成代码模板; 才艮据所述 UI类型的功能组件图元的属性, 与所述对应的已配置生成代码模板, 生成即时渲染组件代码;
从所述业务功能模型中, 读取 API类型的功能组件图元的属性; 从所述 组件界面中对应的 API组件的组件模型中,获取与所述 API类型的功能组件 图元对应的已配置生成代码模板,并根据 API组件声明的引用库生成引用类 库代码; 才艮据所述 API类型的功能组件图元的属性、 所述对应的已配置生成 代码模板以及所述引用类库代码, 生成 API功能代码;
根据所述功能组件图元的属性和所述功能组件图元的关联关系, 生成用 于控制所述 UI组件和所述 API组件交互的脚本代码;
根据所述即时渲染组件代码、 所述 API功能代码, 以及所述脚本代码, 生成所述应用的可执行代码。
图 6为本发明实施例的创建应用的装置的结构示意图。该创建应用的装 置设置在带有显示设备的终端上。 如图 6所示, 创建应用的装置 60包括组 件模型 61、组件设计模块 62、功能设计模块 63以及代码生成模块 64,其中: 所述组件设计模块 62,用于接收用户配置的组件属性的属性值,根据所 述组件属性的属性值, 生成组件模型, 并根据所述组件模型渲染组件界面中 所述组件模型的预定义图元, 以获取与所述组件属性的属性值相应的组件界 面图元;
所述功能设计模块 63,用于将组件模型映射为功能组件模型,并根据所 述组件界面图元将所述功能组件模型图形化显示为功能组件图元,根据用户 对所述功能组件图元的操作, 图形化建立待创建的应用中不同的所述功能组 件图元之间的关联关系, 并根据所述待创建的应用中不同的所述功能组件图 元之间的关联关系生成业务功能模型; 其中, 所述功能组件图元包括功能组 件界面图元和附属于所述功能组件界面图元的功能组件属性图元;
所述代码生成模块 64,用于根据所述组件模型和所述业务功能模型,生 成待创建的应用的可执行代码。
本发明实施例的创建应用的装置创建应用的具体流程与本发明实施例 的创建应用的方法相同, 故此处不再赘述。 根据本发明实施例的创建应用的装置, 利用用户通过图形化组件界面配 置的组件模型创建图形化的功能组件图元, 并根据用户对图形化的功能组件 图元的操作, 确定实现应用时, 各功能组件图元之间的关联关系; 还结合功 能组件图元和关联关系生成用于表征程序功能的业务功能模型, 并根据组件 模型和业务功能模型, 生成应用的可执行代码。 因此, 将组件设计与业务功 能设计有机结合, 实现了在完整的应用创建过程中, 用户基于图形化界面零 代码开发, 并且简化了应用的创建过程, 而且应用的创建效率高。
进一步地, 本发明实施例的创建应用的装置中, 还可以包括业务运行引 擎, 用于运行代码生成模块生成的可执行代码, 以向用户提供应用服务。
进一步地, 本发明实施例的创建应用的装置中, 所述组件属性包括: 组 件界面展现格式、 组件界面展现数据、 组件显示层次、 组件的位置坐标、 组 件触发事件名称、 组件对外交互接口名称及接口相关参数的名称, 以及组件 类型。
进一步地, 本发明实施例的创建应用的装置中, 所述组件设计模块具体 用于:
根据所述组件属性中的组件界面展现格式的属性值及组件界面展现数 据的属性值, 生成组件模型代码; 根据所述组件模型代码, 生成所述组件界 面图元。
进一步地, 本发明实施例的创建应用的装置中, 所述功能设计模块具体 用于:
将所述组件模型的组件属性, 映射为所述功能组件模型的功能组件属 性;
将所述组件模型的组件关键标识, 映射为所述功能组件模型的功能组件 关键标识;
根据所述组件模型的组件关键标识, 获取所述功能组件关键标识对应的 功能组件展现代码; 或者, 根据所述组件关键标识对应的组件模型的组件展 现格式的属性值和组件界面展现数据的属性值, 生成所述功能组件关键标识 对应的功能组件展现代码;
根据所述组件关键标识对应的组件模型的位置坐标, 在功能组件界面对 应的位置坐标处, 4艮据所述功能组件展现代码渲染功能组件图元。
进一步地, 本发明实施例的创建应用的装置中, 所述功能设计模块具体 还用于:
调用终端中预置的绘图工具的图形操作接口,根据所述组件关键标识对 应的位置坐标, 在功能组件界面对应的位置坐标处, 根据所述功能组件展现 代码渲染功能组件界面图元;
根据所述组件模型的组件属性, 自动联想映射所述功能组件属性图元。 进一步地, 本发明实施例的创建应用的装置中, 所述功能设计模块还用 于:
利用终端中预置的绘图工具的三维展现空间能力, 自动建模所述功能组 件图元的三维模型, 并根据用户配置的组件显示层次进行分层显示。
进一步地, 本发明实施例的创建应用的装置中, 所述功能设计模块还用 于:
检索所有组件类型为 API的功能组件图元;将 API类型的功能组件界面 图元的显示层次设置为最底层值,以在最底层显示所述 API类型的功能组件 界面图元;将 API类型的功能组件界面图元对应的输入输出属性图元的显示 层次, 设置为所述 API类型的功能组件界面图元的显示层次加 1, 以在所述 API类型的功能组件界面图元的上方叠加显示附属的输入输出属性图元; 检索所有组件类型为 UI的功能组件图元;根据所述 UI类型的功能组件 图元的显示层次, 显示所述 UI类型的功能组件图元。
进一步地, 本发明实施例的创建应用的装置中, 所述功能设计模块还还 用于:
通过^ ί爹改所述功能组件图元的显示层次,控制所述功能组件图元处于显 示状态或隐藏状态。
进一步地, 本发明实施例的创建应用的装置中, 所述功能设计模块还用 于:
接收用户为所述功能组件图元进行颜色标注的标注颜色消息, 所述标注 颜色消息包括标注颜色、 标注时间戳, 以及功能组件图元对应的功能组件关 键标识; 根据所述标注颜色、 标注时间戳, 以及功能组件图元对应的功能组件关 键标识, 生成图元标注序列;
根据所述图元标注序列,确定待创建的应用中不同的功能组件图元之间 的关联关系。
进一步地, 本发明实施例的创建应用的装置中, 所述功能设计模块还具 体用于:
将所述功能组件图元的前景色, 修改为所述标注颜色;
根据所述功能组件图元的前景色, 以及所述功能组件图元对应的标注时 间戳, 自动生成用于指示应用功能逻辑的标注顺序码。
进一步地, 本发明实施例的创建应用的装置中, 所述功能设计模块还具 体用于:
在所述功能组件图元上自动增加容器元素, 并设置所述容器元素的文本 为所述标注顺序码。
进一步地, 本发明实施例的创建应用的装置中, 所述功能设计模块还用 于:
接收用户的拖动操作, 自动画线连接所述拖动操作对应的源功能组件图 元和目标功能组件图元,记录所述待创建的应用中不同的所述功能组件图元 之间的关联关系。
进一步地, 本发明实施例的创建应用的装置中, 所述功能设计模块还用 于:
将所述组件模型的组件关键标识, 添加任意字符串, 生成所述功能组件 关键标识。
进一步地, 本发明实施例的创建应用的装置中, 所述功能设计模块还用 于:
根据所述待创建的应用中不同的所述功能组件图元之间的关联关系, 生 成功能组件图元关联序列;
根据所述图元关联序列、所述组件模型以及所述组件模型与功能组件图 元的映射关系, 生成所述业务功能模型。
进一步地, 本发明实施例的创建应用的装置中, 所述图形化建立的所述 功能组件图元之间的关联关系, 是以树形结构分层或分级展示的。
进一步地, 本发明实施例的创建应用的装置中, 所述功能组件图元与相 应的组件界面图元的展现效果一致。
进一步地, 本发明实施例的创建应用的装置中, 所述代码生成模块, 用 于:
从所述业务功能模型中, 读取 UI类型的功能组件图元的属性; 从所述 组件界面中对应的 UI组件的组件模型中,获取与所述 UI类型的功能组件图 元对应的已配置生成代码模板; 才艮据所述 UI类型的功能组件图元的属性, 与所述对应的已配置生成代码模板, 生成即时渲染组件代码;
从所述业务功能模型中, 读取 API类型的功能组件图元的属性; 从所述 组件界面中对应的 API组件的组件模型中,获取与所述 API类型的功能组件 图元对应的已配置生成代码模板,并根据 API组件声明的引用库生成引用类 库代码; 才艮据所述 API类型的功能组件图元的属性、 所述对应的已配置生成 代码模板以及所述引用类库代码, 生成 API功能代码;
根据所述功能组件图元的属性和所述功能组件图元的关联关系, 生成用 于控制所述 UI组件和所述 API组件交互的脚本代码;
根据所述即时渲染组件代码、 所述 API功能代码, 以及所述脚本代码, 生成所述应用的可执行代码。
下文中, 以两个具体的示例, 对应用本发明实施例的创建应用的装置创 建应用的流程进行更为详细说明。
示例一
创建的应用: 拍照业务, 通过单击一个按钮调用拍照 API组件, 并把拍 照的照片显示在图片组件上的 WEB业务, 通过 JavaScript和 CSS来实现该 业务。
需使用的相关组件: 一个图片 UI组件、 一个按钮 UI组件、 一个拍照
API组件。
图 7为应用本发明实施例的创建应用的装置创建应用的示例一的流程示 意图, 如图 7所示, 包括:
步骤 701, 组件设计模块记录用户设计的图片 UI组件、 按钮 UI组件、 拍照 API组件的属性信息, 并更新预先存储的组件模型;
具体地, 预先定义的组件模型包括 UI组件、 API组件和模型操作接口。 图 8为应用本发明实施例的创建应用的装置更新组件模型的一个示例的流程 示意图。 如图 8所示, 包括以下步骤:
步骤 801, 组件设计模块根据用户选择设计的组件的类型和名称, 向模 型操作接口发送组件元数据获取请求;
步骤 802, 模型操作接口根据用户选择设计的组件的类型和名称, 读取 对应的组件元数据, 并以 JSON格式封装为组件元数据消息;
步骤 803, 模型操作接口将组件元数据消息返回给组件设计模块; 步骤 804, 组件设计模块根据所获取的组件元数据, 图形化分属性展现 属性项, 展现形式例如为 (属性名称、 属性值), 并设置属性值可编辑; 步骤 805, 组件设计模块为属性值增加编辑监听事件, 绑定组件属性变 更处理回调接口, 回调接口格式如下:
Interface ( String type, String name, String propertyName, String property Value )
{
〃调用组件元模型操作接口更新组件元模型
}
步骤 806, 回调接口获取变更属性值, 请求模型操作接口更新组件元数 据;
步骤 807, 模型操作接口将相应的 UI组件 /API组件中的属性更新为变 更的属性值。
在本示例中, 用户例如通过拖拽的方式, 在组件设计模块中增加了图片 UI组件、 按钮 UI组件和拍照 API组件, 并设置组件的展现数据、 图标、 样 式等属性。 组件设计模块调用模型操作接口, 自动更新组件模型对应的属性 信息。 更为具体地, 用户设计图片 UI组件的功能名为" changelmage", 输入 参数为 "image"; 设计按钮 UI组件 (即"拍照"按钮) 的触发事件名属性为 "onClick", 别名属性为" click"; 设计拍照 API组件的名称为 "TakePicture"及 对应的图标。 步骤 702, 组件设计模块请求功能设计模块生成所有组件的功能组件模 型;
步骤 703, 功能设计模块根据组件模型, 生成功能组件模型, 并建立组 件模型的组件属性与功能组件模型的功能组件属性的映射关系;
具体地, 功能设计模块向组件设计模块请求获取图片 UI组件、 按钮 UI 组件和拍照 API组件的组件元数据,并接收组件设计模块响应该请求返回的 组件元数据信息。 返回的元数据信息如下:
{
{
{
ID :"objectl",
Name : "IMAGE",
Type : "UI",
Icon : "http://localhost/resources/apple.png"//API组件是必填项, Width : "80px",
Height: "80px",
Zindex: "1",
X: "124px",
Figure imgf000027_0001
Functions:
{
function:
{
name: "change Src",
alias :"changelmage",
input:
{
parameter: {name:"src",alias: "image", default:"", nullable: "true"} output: {}
},
Events: {}
}
{
ID :"object2",
Name: "takePicture",
Text: "拍照"
Type: "UI",
Icon: "http://localhost/resources/gear.png"//API组件是必填项,
Width: "80px",
Height : "20px",
X: "124px",
Figure imgf000028_0001
Zindex: "2",
Functions: { input: {} , output: {name:"imagepath",alias:"image"} } Events: {name :"onClick",alias: "click"}
}
{
ID :"object3",
Name: "TakePicture",
Text: "takePicture"
Type: "API",
Icon: "http://localhost/resources/camera.png"//API组件是必填项 Width: "80px",
Height: "20px",
X: "124px",
Figure imgf000028_0002
Zindex: "3", Functions :
{
function:
{
name:"takePicture",
alias :"takePicture",
input:
{
parameter: { }
},
output: {name:" imageURL",alias:"imageURL"}
},
Events: {}
}
功能设计模块解析返回的组件元模型, 分别获取图片 UI组件、 按钮 UI 组件和拍照 API组件的组件元数据。 功能设计模块釆用组件关键标识(组件 ID标识) +"function"生成所有组件对应的功能组件关键标识, 即生成如下: 图片 UI功能组件标识为: "objectl function";
按钮 UI功能组件标识为: "object2 function";
拍照 API功能组件标识为: "object3 function"。
功能设计模块设置"拍照"按钮对应的功能组件支持事件为" click"; 设置 图片 UI功能组件支持的功能属性为步骤 701中用户设计的图片 UI组件的功 能属性, 即:
function:
{
name: "change Src",
alias :"changelmage",
input:
{ =j9A09snomuooT§0|(1(^) 9^0T|3|qQfqo(1=^OT |q uooT§0|(1(^) 95[OT|3fqo(1=5[OT uo " '9|q siA :XiT|Tq sTA 'y : u§T|B-ix9i 'xdo^t : dop §0| 'xd^8 : ¾9 τ§0| 'ΐ :x9pm-z
Figure imgf000030_0001
Λΐρ>
: ^w^^ ^ ¥i ^ Ψ ¾ ¥i in
<Ap/><"33d「3idfe/pimcu35pBq/S33腿 ςι
§UIT><(1(£) 95[0T|3fqO(1=5[0T UO
(19|qB§§m -mX gzssj-mX qou5[-9z s9J-mX jsAoq-szs ai- "=ssBio" si[i)ino3sno] [f"qo"=ino3snouiuoo3oi" si[i)J3A03sno] [f"qo"=J3A
" '
Figure imgf000030_0002
Λΐρ>
{ ς\
{ } : js uiBJBd
}
:induT oi
}
: uopunj
IciV ^^ m ζ
^w^ ΐθ ¾ ^ ^ Ψ ¾ ^ in
{
{
{"3tui,, :9|qB|pu '",,:iitiB p 腿 ,, : smiB'" is,,:3ureu} : JSISUIBJBI
-82-
ΪΖ806Ϊ/ 0Ζ OAV "objMouseOver(this);'logiconmouseout="objMouseOut(this);"class="yui-resize- hover yui-resize-knob yui-resize yui-draggable"><logica id=,logicobjectPushButton2"style="margin:0px;height:100%;width:100%;text-al ign:left;" logichref="#" class="ui-btn ui-btn-icon-left ui-btn-hover-a ui-btn-corner-all ui-shadow ui-btn-up-a"><span id="buttonandicon2 " class="ui-btn-inner ui-btn-corner-all" style="line-height: 18px"><span class="ui-btn-text" id="buttontext2">拍照 </span> <span id="buttonicon2" class="ui-icon ui-icon-gear ui-icon-shadow"></ span></ span></logica>
拍照 API功能组件的功能组件展示代码为:
<div id="TakePicture" lang="API" align="addDsJSAPI(,COSMOS', ",
'takePicture', 'username', ", 'images/toolbox/mobile_picture.png');" dir=" TakePicture " onmouseover="switchTopBarBg(this,'overVapibg.png');" onmouseout="switchTopBarBg(this,Over',");" class="div_api" title=" TakePicture "
style="background-image:url(http://localhost:8088/mashupIDE/images/newstyle/ apibg.png); "> <table> <tbody><tr><td style="height:30px;cursor:move" align="center"><imgclass=' mg_api_td"src=, mages/toolbox/mobile_picture.png "></td></tr><tr><td align="center"><div class="td_api"><a style:"" href= "j avascript: void(0) "title=" ViewDetail" onclick: " show ApiDetail('TakePictur e');">TakePicture</a><a></a></div></tdx/tr> </tbody></table></div>
功能设计模块再将各功能组件的显示层次 Zindex值, 设置为用户设计 的组件的 Zindex属性值。 例如, 将图片 UI功能组件的 Zindex值设置为 1, 将按钮 UI功能组件的 Zindex值设置为 2,将拍照 API功能组件的 Zindex值 设置为 3。
功能设计模块再将各功能组件的显示位置属性值,设置为用户设计的组 件的显示位置属性值。 例如, 将图片 UI功能组件的 X属性值为 124px, y属 性值为 219px; 将按钮 UI功能组件的 X属性值为 124px, y属性值为 319px; 将拍照 API功能组件的 X属性值为 124px, y属性值为 419px。
通过上述步骤, 功能设计模块完成功能组件模型的生成, 保存所生成的 图片 UI功能组件、 按钮 UI功能组件和拍照 API功能组件。
步骤 704, 功能设计模块根据组件关键标识和功能组件关键标识建立映 射关系;
例如, 映射关系如下:
{objectl :objectl— function,object:object2— function,object3 :object3— function
}
步骤 705, 图形化显示功能组件模型到功能设计模块;
具体地, 在功能设计模块中分别为各功能组件模型增加 DIV容器元素, 所增加的 DIV容器元素的位置为功能组件模型的坐标属性(x, y )的值, 并 设置 DIV 容器元素的 ID 为功能组件 ID 标识, 设置 DIV 容器元素的 innerHTML代码为功能组件模型的 HTML代码, 最终展现效果同组件设计 模块中的组件展现效果完全一致。
步骤 706, 自动联想功能组件模型属性, 并图形化映射到图形化显示的 功能组件 (即功能组件界面图元)右侧附近;
具体流程例如包括: 功能设计模块从功能组件模型中读取拍照按钮对应 的事件属性值,即" click";在拍照按钮功能组件右侧增加一个 DIV展现容器; 设置 DIV文本(text )属性为 "click"; 为展现事件容器增加一个图片 (IMG ) 元素统一资源定位符 ( Uniform/Universal Resource Locator, URL ), "htt ://localhost/resources/gear.png", 用于标识该功能组件为事件功能组件; 读取拍照 API功能组件对应的功能属性,属性值参考返回消息中 API组件元 数据; 在拍照 API功能设计组件右侧增加一个 DIV容器; 设置 DIV text属 性为 "output"; 为展现 DIV 容器增加一个 IMG 元素 URL, "htt ://localhost/resources/output.png" ,用于标识该功能组件为 API输出单元。
步骤 707, 功能设计模块记录用户通过拖动功能组件图元, 设计的功能 组件关联关系, 生成功能组件关联序列;
具体地, 用户通过拖动功能组件图元到目标、 关联组件, 功能设计模块 自动画线连接源和目标组件, 完成功能组件关联, 并建立关联关系, 生成功 能组件关联序列。 在本示例中, 所生成的功能组件关联序列例如为:
{ obj ect2. click: obj ect3.takePicture, object3. out: objectl } 步骤 708, 功能设计模块记录功能设计展示效果及功能组件模型, 序列 化功能设计容器代码 JSON ( JavaScript Object Notation )格式字符串及序列 化功能组件模型 JSON格式字符串并保存。
步骤 709, 功能设计模块根据组件模型、 组件模型与功能组件模型的映 射关系以及功能组件关联序列, 生成业务功能模型并保存;
在本示例中, 所生成的业务功能模型如下:
<function>
<component>
<id>object2</id>
<event>
<name>click</ event>
<component>
<id>object3<id>
<function>
<priority >l</priority>
<name>takePicture<name>
<parameter>
<name></ name>
<from> </from>
</parameter>
<out>
<id>objectl</id>
</out>
</function>
</component>
</event>
</ component >
</function>
步骤 710, 代码生成模块根据组件模型、 业务功能模型生成超文本标记 语言 ( Hypertext Markup Language , HTML )和 javascript代码。
在上述示例中, 功能设计模块以二维形式对功能组件图元进行显示, 并 且通过接收用户对功能组件图元的拖动操作, 建立所述待创建的应用中不同 的功能组件图元之间的关联关系; 还结合功能组件图元和关联关系生成用于 表征程序功能的业务功能模型, 并根据组件模型和业务功能模型, 生成应用 的可执行代码。 因此, 将组件设计与业务功能设计有机结合, 实现了在完整 的应用开发过程中, 用户基于图形化界面零代码开发, 使得普通人员也能简 单、 快速开发程序功能, 而且开发效率高。
示例二
本示例中,假设的待创建的应用、需使用的相关组件与上述示例一相同。 图 9为应用本发明实施例的创建应用的装置创建应用的示例二的流程示 意图, 如图 9所示, 包括:
步骤 901, 组件设计模块记录用户设计的图片 UI组件、 按钮 UI组件、 拍照 API组件的属性信息, 生成组件模型, 并根据组件模型渲染对应的预定 义图元, 重新生成组件界面图元;
步骤 902, 组件设计模块请求功能设计模块生成所有组件的功能组件模 型;
步骤 903, 功能设计模块根据组件模型, 生成功能组件模型;
步骤 904, 功能设计模块根据组件关键标识和功能组件关键标识建立映 射关系;
上述步骤 901 904可以釆用与示例一相同的方式执行。
步骤 905, 以 3D展现样式, 图形化显示功能组件模型到功能设计模块; 具体地, 在功能设计模块中分别为各功能组件模型增加 DIV容器元素, 所增加的 DIV容器元素的位置为功能组件模型的坐标属性(x, y )的值, 并 设置 DIV 容器元素的 ID 为功能组件 ID 标识, 设置 DIV 容器元素的 innerHTML代码为功能组件模型的 HTML代码, 最终展现效果同组件设计 模块中的组件展现效果完全一致, 并重新设置 API组件的容器的样式 zindex 属性值为 0使拍照 API作为底层展现, 设置功能组件容器的 style属性, 增 加 CSS3的 3D展现样式, 使功能组件分层 3D展示。 增加样式 CSS代码例如为: perspective: 500px;
perspective-origin: 150px 500px;
transform-origin: 150px 500px;
animation: scrollText 200s linear infinite;
-webkit-box-shadow: 0 2px lOpx rgba(0, 0, 0, 0.4),inset 0 4px 4px 0
#ffffff,inset 0 2px 4px 0 rgba(0, 0, 0, 0.4),inset 0 -2px 2px 0 rgba(255, 255, 255
0.9);
-moz-box-shadow: 0 2px 10px rgba(0, 0, 0, 0.4),inset 0 4px 4px 0
#ffffff,inset 0 2px 4px 0 rgba(0, 0, 0, 0.4),inset 0 -2px 2px 0 rgba(255, 255, 255 0.9);
-moz-border-radius: 6px;
-webkit-border-radius: 6 x;
Figure imgf000035_0001
0% { transform: rotateX(45deg) translate Y(500px); }
100% { transform: rotateX(45deg) translate Y(-8300px); }
}
步骤 906, 自动联想功能组件模型属性, 并图形化映射到图形化显示的 功能组件 (即功能组件界面图元)正上方的边线处;
具体地, 例如: 功能设计模块从功能组件模型中读取拍照按钮对应的事 件属性值, 即" click"; 在拍照按钮功能组件左上方增加一个 DIV展现容器; 设置 DIV文本( text )属性为 "click"; 为展现事件容器增加 CSS3立体样式, 使事件单元立体展示。
步骤 907, 功能设计模块记录用户通过对功能组件图元标注颜色, 设计 的功能组件关联关系, 生成功能组件关联序列;
具体地, 例如: 用户单击拍照按钮组件的 click事件单元; 功能设计模 块显示包含常见颜色表的颜色选择器; 用户单击目标颜色选择标注颜色; 记 录标注的色彩码( #llffll )、标注色彩的组件 ID标识及事件名 {object2.click}, 和时间戳( 7/15/2012 10: 13:26 PM ); 以标注色彩的组件 ID标识、 标注颜色、 时间戳生成图元标注序列, 例如为:
{[object2, click, 7/15/2012 10:13:26 PM, #llffll], [object3,takePicture, 7/15/2012 10:13:27 PM, #llffll], [objectl, 7/15/2012 10:13:28 PM, #llffll]} 功能设计模块根据图元标注序列分析出业务功能步骤, 并自动标注顺序 码,生成功能组件关联序列,例如:拍照按钮功能组件的 click单元标注为 1, 拍照 API功能组件标注为 2, 图片功能组件标注为 3, 所生成的功能组件关 联序歹1 J为: { obj ect2. click: object3.takePicture, object3. out: objectl }
步骤 908, 功能设计模块记录功能设计展示效果及功能组件模型, 序列 化功能设计容器代码 JSON ( JavaScript Object Notation )格式字符串及序列 化功能组件模型 JSON格式字符串并保存。
步骤 909, 功能设计模块根据组件模型、 组件模型与功能组件模型的映 射关系以及功能组件关联序列, 生成业务功能模型并保存;
步骤 910, 代码生成模块根据组件模型、 业务功能模型生成超文本标记 语言 ( Hypertext Markup Language , HTML )和 javascript代码。
上述步骤 908 910可以釆用与示例一相同的方式执行。
在上述示例中, 功能设计模块以三维形式对功能组件图元进行显示, 并 且通过接收用户对功能组件图元的颜色标注操作, 建立所述待创建的应用中 不同的功能组件图元之间的关联关系; 还结合功能组件图元和关联关系生成 用于表征程序功能的业务功能模型, 并根据组件模型和业务功能模型, 生成 应用的可执行代码。 因此, 将组件设计与业务功能设计有机结合, 实现了在 完整的应用开发过程中, 用户基于图形化界面零代码开发, 使得普通人员也 能简单、 快速开发程序功能, 而且开发效率高。
图 10为本发明另一实施例的创建应用的装置的结构示意图。 该创建应 用的装置设置在带有显示设备的终端上。 如图 10所示, 该创建应用的装置 100包括存储器 110和与存储器连接的处理器 120, 其中: 存储器 110中存 储一组程序代码, 且处理器 120用于调用存储器 110中存储的程序代码, 用 于执行以下操作:
接收用户配置的组件属性的属性值, 根据所述组件属性的属性值, 生成 组件模型, 并根据所述组件模型渲染组件界面中所述组件模型的预定义图 元, 以获取与所述组件属性的属性值相应的组件界面图元;
将所述组件模型映射为功能组件模型, 并根据所述组件界面图元将所述 功能组件模型图形化显示为功能组件图元,根据用户对所述功能组件图元的 操作, 图形化建立待创建的应用中不同的所述功能组件图元之间的关联关 系, 并根据所述待创建的应用中不同的功能组件图元之间的关联关系生成业 务功能模型; 其中, 所述功能组件图元包括功能组件界面图元和附属于所述 功能组件界面图元的功能组件属性图元;
根据所述组件模型和所述业务功能模型, 生成应用的可执行代码。 本发明实施例的创建应用的装置创建应用的具体流程与本发明实施例 的创建应用的方法相同, 故此处不再赘述。
根据本发明实施例的创建应用的装置, 利用用户通过图形化组件界面配 置的组件模型创建图形化的功能组件图元, 并根据用户对图形化的功能组件 图元的操作, 确定实现应用时, 各功能组件图元之间的关联关系; 还结合功 能组件图元和关联关系生成用于表征程序功能的业务功能模型, 并根据组件 模型和业务功能模型, 生成应用的可执行代码。 因此, 将组件设计与业务功 能设计有机结合, 实现了在完整的应用创建过程中, 用户基于图形化界面零 代码开发, 并且简化了应用的创建过程, 而且应用的创建效率高。
进一步地, 本发明实施例的创建应用的装置中, 所述组件属性包括: 组 件界面展现格式、 组件界面展现数据、 组件显示层次、 组件的位置坐标、 组 件触发事件名称、 组件对外交互接口名称及接口相关参数的名称, 以及组件 类型。
进一步地, 本发明实施例的创建应用的装置中, 所述处理器还用于调用 存储器中存储的程序代码, 执行以下操作:
根据所述组件属性中的组件界面展现格式的属性值及组件界面展现数 据的属性值, 生成组件模型代码;
根据所述组件模型代码, 生成所述组件界面图元。
进一步地, 本发明实施例的创建应用的装置中, 所述处理器还用于调用 存储器中存储的程序代码, 执行以下操作: 将所述组件模型的组件属性, 映射为所述功能组件模型的功能组件属 性;
将所述组件模型的组件关键标识, 映射为所述功能组件模型的功能组件 关键标识; 根据所述组件模型的组件关键标识, 获取所述功能组件关键标识 对应的功能组件展现代码; 或者, 4艮据所述组件关键标识对应的组件模型的 组件展现格式的属性值和组件界面展现数据的属性值, 生成所述功能组件关 键标识对应的功能组件展现代码;
根据所述组件关键标识对应的组件模型的位置坐标, 在功能组件界面对 应的位置坐标处, 4艮据所述功能组件展现代码渲染功能组件图元。
进一步地, 本发明实施例的创建应用的装置中, 所述处理器还用于调用 存储器中存储的程序代码, 执行以下操作:
调用终端中预置的绘图工具的图形操作接口,根据所述组件关键标识对 应的位置坐标, 在功能组件界面对应的位置坐标处, 根据所述功能组件展现 代码, 渲染功能组件界面图元;
根据所述组件模型的组件属性, 自动联想映射所述功能组件属性图元。 进一步地, 本发明实施例的创建应用的装置中, 所述处理器还用于调用 存储器中存储的程序代码, 执行以下操作:
利用终端中预置的绘图工具的三维展现空间能力, 自动建模所述功能组 件图元的三维模型, 并根据用户配置的组件显示层次进行分层显示。
进一步地, 本发明实施例的创建应用的装置中, 所述处理器还用于调用 存储器中存储的程序代码, 执行以下操作:
检索所有组件类型为 API的功能组件图元;将 API类型的功能组件界面 图元的显示层次设置为最底层值,以在最底层显示所述 API类型的功能组件 界面图元;将 API类型的功能组件界面图元对应的输入输出属性图元的显示 层次, 设置为所述 API类型的功能组件界面图元的显示层次加 1, 以在所述 API类型的功能组件界面图元的上方叠加显示附属的输入输出属性图元; 检索所有组件类型为 UI的功能组件图元;根据所述 UI类型的功能组件 图元的显示层次, 显示所述 UI类型的功能组件图元。
进一步地, 本发明实施例的创建应用的装置中, 所述处理器还用于调用 存储器中存储的程序代码, 执行以下操作:
通过^ ί爹改所述功能组件图元的显示层次,控制所述功能组件图元处于显 示状态或隐藏状态。
进一步地, 本发明实施例的创建应用的装置中, 所述处理器还用于调用 存储器中存储的程序代码, 执行以下操作:
接收用户为所述功能组件图元进行颜色标注的标注颜色消息, 所述标注 颜色消息包括标注颜色、 标注时间戳, 以及功能组件图元对应的功能组件关 键标识;
根据所述标注颜色、 标注时间戳, 以及功能组件图元对应的功能组件关 键标识, 生成图元标注序列;
根据所述图元标注序列,确定待创建的应用中不同的功能组件图元之间 的关联关系。
进一步地, 本发明实施例的创建应用的装置中, 所述处理器还用于调用 存储器中存储的程序代码, 执行以下操作:
将所述功能组件图元的前景色, 修改为所述标注颜色;
根据所述功能组件图元的前景色, 以及所述功能组件图元对应的标注时 间戳, 自动生成用于指示应用功能逻辑的标注顺序码。
进一步地, 本发明实施例的创建应用的装置中, 所述处理器还用于调用 存储器中存储的程序代码, 执行以下操作:
在所述功能组件图元上自动增加容器元素, 并设置所述容器元素的文本 为所述标注顺序码。
进一步地, 本发明实施例的创建应用的装置中, 所述处理器还用于调用 存储器中存储的程序代码, 执行以下操作:
接收用户的拖动操作, 自动画线连接所述拖动操作对应的源功能组件图 元和目标功能组件图元,记录所述待创建的应用中不同的所述功能组件图元 之间的关联关系。
进一步地, 本发明实施例的创建应用的装置中, 所述处理器还用于调用 存储器中存储的程序代码, 执行以下操作:
将所述组件模型的组件关键标识, 添加任意字符串, 生成所述功能组件 关键标识。
进一步地, 本发明实施例的创建应用的装置中, 所述处理器还用于调用 存储器中存储的程序代码, 执行以下操作:
根据所述待创建的应用中不同功能组件图元之间的关联关系, 生成功能 组件图元关联序列;
根据所述图元关联序列、 所述组件模型, 以及所述组件模型与功能组件 图元的映射关系, 生成所述业务功能模型。
进一步地, 本发明实施例的创建应用的装置中, 所述图形化建立的所述 待创建的应用中不同的所述功能组件图元之间的关联关系, 是以树形结构分 层或分级展示的。
进一步地, 本发明实施例的创建应用的装置中, 所述功能组件图元与相 应的组件界面图元的展现效果一致。
进一步地, 本发明实施例的创建应用的装置中, 所述处理器还用于调用 存储器中存储的程序代码, 执行以下操作:
从所述业务功能模型中, 读取 UI类型的功能组件图元的属性; 从所述 组件界面中对应的 UI组件的组件模型中,获取与所述 UI类型的功能组件图 元对应的已配置生成代码模板; 才艮据所述 UI类型的功能组件图元的属性, 与所述对应的已配置生成代码模板, 生成即时渲染组件代码;
从所述业务功能模型中, 读取 API类型的功能组件图元的属性; 从所述 组件界面中对应的 API组件的组件模型中,获取与所述 API类型的功能组件 图元对应的已配置生成代码模板,并根据 API组件声明的引用库生成引用类 库代码; 才艮据所述 API类型的功能组件图元的属性、 所述对应的已配置生成 代码模板以及所述引用类库代码, 生成 API功能代码;
根据所述功能组件图元的属性和所述待创建的应用中不同功能组件图 元之间的关联关系, 生成用于控制所述 UI组件和所述 API组件交互的脚本 代码;
根据所述即时渲染组件代码、 所述 API功能代码以及所述脚本代码, 生 成所述应用的可执行代码。
图 11 为本发明另一实施例的创建应用的装置的结构示意图, 该装置包 括至少一个处理器 1101 (例如 CPU ), 至少一个网络接口 1105或者其他通 信接口, 存储器 1106, 和至少一个通信总线 1103, 用于实现这些装置之间 的连接通信。 处理器 1101用于执行存储器 1106中存储的可执行模块, 例如 计算机程序。 存储器 1106 可能包含高速随机存取存储器 (RAM: Random Access Memory ), 也可能还包括非不稳、定的存 4诸器( non- volatile memory ), 例如至少一个磁盘存储器。通过至少一个网络接口 1105 (可以是有线或者无 线)实现该系统网关与至少一个其他网元之间的通信连接,可以使用互联网, 广域网, 本地网, 城域网等。
在一些实施方式中, 存储器 1106存储了程序 11061, 程序 11061可以被 处理器 1101 执行, 这个程序包括: 接收用户配置的组件属性的属性值, 根 据所述组件属性的属性值, 生成组件模型, 并根据所述组件模型渲染组件界 面中所述组件模型的预定义图元, 以获取与所述组件属性的属性值相应的组 件界面图元; 将所述组件模型映射为功能组件模型, 并根据所述组件界面图 元将所述功能组件模型图形化显示为功能组件图元,才艮据用户对所述功能组 件图元的操作, 图形化建立待创建的应用中不同的所述功能组件图元之间的 关联关系, 并根据所述待创建的应用中不同的所述功能组件图元之间的关联 关系生成业务功能模型; 根据所述组件模型和所述业务功能模型, 生成所述 应用的可执行代码。
本领域普通技术人员可以理解: 实现上述各方法实施例的全部或部分步 骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可 读取存储介质中。 该程序在执行时, 执行包括上述各方法实施例的步骤; 而 前述的存储介质包括: ROM、 RAM, 磁碟或者光盘等各种可以存储程序代 码的介质。
最后应说明的是: 以上实施例仅用以说明本发明的技术方案, 而非对其 限制; 尽管参照前述实施例对本发明进行了详细的说明, 本领域的普通技术 人员应当理解: 其依然可以对前述各实施例所记载的技术方案进行修改, 或 者对其中部分技术特征进行等同替换; 而这些修改或者替换, 并不使相应技 术方案的本质脱离本发明各实施例技术方案的精神和范围。
+

Claims

权 利 要 求
1、 一种创建应用的方法, 该方法应用在带有显示设备的终端上, 其特 征在于, 包括:
接收用户配置的组件属性的属性值, 根据所述组件属性的属性值, 生成 组件模型, 并根据所述组件模型渲染组件界面中所述组件模型的预定义图 元, 以获取与所述组件属性的属性值相应的组件界面图元;
将所述组件模型映射为功能组件模型, 并根据所述组件界面图元将所述 功能组件模型图形化显示为功能组件图元,根据用户对所述功能组件图元的 操作, 图形化建立待创建的应用中不同的所述功能组件图元之间的关联关 系, 并根据所述待创建的应用中不同的所述功能组件图元之间的关联关系生 成业务功能模型;
根据所述组件模型和所述业务功能模型, 生成所述待创建的应用的可执 行代码。
2、 根据权利要求 1 所述的创建应用的方法, 其特征在于, 所述根据所 述组件模型渲染组件界面中所述组件模型的预定义图元, 以获取与所述组件 属性的属性值相应的组件界面图元, 具体包括:
根据所述组件属性中的组件界面展现格式的属性值及组件界面展现数 据的属性值, 生成组件模型代码;
根据所述组件模型代码, 生成所述组件界面图元。
3、 根据权利要求 1 所述的创建应用的方法, 其特征在于, 所述将组件 模型映射为功能组件模型, 并根据所述组件界面图元将所述功能组件模型图 形化显示为功能组件图元, 具体包括:
将所述组件模型的组件属性, 映射为所述功能组件模型的功能组件属 性;
将所述组件模型的组件关键标识, 映射为所述功能组件模型的功能组件 关键标识;
根据所述组件模型的组件关键标识, 获取所述功能组件关键标识对应的 功能组件展现代码; 或者, 根据所述组件关键标识对应的组件模型的组件展 现格式的属性值和组件界面展现数据的属性值, 生成所述功能组件关键标识 对应的功能组件展现代码;
根据所述组件关键标识对应的组件模型的位置坐标, 在功能组件界面对 应的位置坐标处, 4艮据所述功能组件展现代码渲染所述功能组件图元。
4、 根据权利要求 3 所述的创建应用的方法, 其特征在于, 所述根据所 述组件关键标识对应的组件模型的位置坐标, 在功能组件界面对应的位置坐 标处, 根据所述功能组件展现代码渲染功能组件图元, 具体包括:
调用所述终端中预置的绘图工具的图形操作接口,根据所述组件关键标 识对应的位置坐标, 在功能组件界面对应的位置坐标处, 根据所述功能组件 展现代码渲染功能组件界面图元;
根据所述组件模型的组件属性, 自动联想映射所述功能组件属性图元。
5、 根据权利要求 1 所述的创建应用的方法, 其特征在于, 所述将所述 功能组件模型图形化显示为功能组件图元, 具体包括:
利用所述终端中预置的绘图工具的三维展现空间能力, 自动建模所述功 能组件图元的三维模型, 并根据用户配置的组件显示层次进行分层显示。
6、 根据权利要求 5所述的创建应用的方法, 其特征在于, 所述根据用 户配置的组件显示层次进行分层显示, 具体包括:
检索所有组件类型为应用程序交互接口 API 的功能组件图元; 将 API 类型的功能组件界面图元的显示层次设置为最底层值, 以在最底层显示所述 API类型的功能组件界面图元; 将 API类型的功能组件界面图元对应的输入 输出属性图元的显示层次,设置为所述 API类型的功能组件界面图元的显示 层次加 1, 以在所述 API类型的功能组件界面图元的上方叠加显示附属的输 入输出属性图元;
检索所有组件类型为可视化用户交互界面 UI类型的功能组件图元; 根 据所述 UI类型的功能组件图元的显示层次,显示所述 UI类型的功能组件图 元。
7、 根据权利要求 1 所述的创建应用的方法, 其特征在于, 所述根据用 户对所述功能组件图元的操作, 图形化建立待创建的应用中不同的所述功能 组件图元之间的关联关系, 具体包括:
接收用户为所述功能组件图元进行颜色标注的标注颜色消息, 所述标注 颜色消息包括标注颜色、 标注时间戳, 以及功能组件图元对应的功能组件关 键标识;
根据所述标注颜色、 标注时间戳, 以及功能组件图元对应的功能组件关 键标识, 生成图元标注序列;
根据所述图元标注序列,确定所述待创建的应用中不同的所述功能组件 图元之间的关联关系。
8、 根据权利要求 7所述的创建应用的方法, 其特征在于, 所述根据所 述图元标注序列,确定所述待创建的应用中不同的所述功能组件图元之间的 关联关系, 具体包括:
将所述功能组件图元的前景色, 修改为所述标注颜色;
根据所述功能组件图元的前景色, 以及所述功能组件图元对应的标注时 间戳, 自动生成用于指示应用功能逻辑的标注顺序码。
9、 根据权利要求 1-8任一所述的创建应用的方法, 其特征在于, 所述 根据所述待创建的应用中不同的所述功能组件图元之间的关联关系生成业 务功能模型, 具体包括:
根据所述待创建的应用中不同的所述功能组件图元之间的关联关系, 生 成功能组件图元关联序列;
根据所述图元关联序列、所述组件模型以及所述组件模型与功能组件图 元的映射关系, 生成所述业务功能模型。
10、 根据权利要求 1-8任一所述的创建应用的方法, 其特征在于, 所述 根据所述组件模型和所述业务功能模型,生成应用的可执行代码,具体包括: 从所述业务功能模型中, 读取可视化用户交互界面 UI类型的功能组件 图元的属性; 从所述组件界面中对应的 UI组件的组件模型中, 获取与所述 UI类型的功能组件图元对应的已配置生成代码模板; 根据所述 UI类型的功 能组件图元的属性, 与所述对应的已配置生成代码模板, 生成即时渲染组件 代码;
从所述业务功能模型中,读取应用程序交互接口 API类型的功能组件图 元的属性; 从所述组件界面中对应的 API组件的组件模型中, 获取与所述 API类型的功能组件图元对应的已配置生成代码模板, 并根据 API组件声明 的引用库生成引用类库代码; 才艮据所述 API类型的功能组件图元的属性、 所 述对应的已配置生成代码模板以及所述引用类库代码, 生成 API功能代码; 根据所述功能组件图元的属性和所述待创建的应用中不同的所述功能 组件图元之间的关联关系, 生成用于控制所述 UI组件和所述 API组件交互 的脚本代码;
根据所述即时渲染组件代码、 所述 API功能代码以及所述脚本代码, 生 成所述应用的可执行代码。
11、一种创建应用的装置,设置在带有显示设备的终端上,其特征在于, 包括组件模型、 组件设计模块、 功能设计模块以及代码生成模块, 其中: 所述组件设计模块, 用于接收用户配置的组件属性的属性值, 根据所述 组件属性的属性值, 生成组件模型, 并根据所述组件模型渲染组件界面中所 述组件模型的预定义图元, 以获取与所述组件属性的属性值相应的组件界面 图元;
所述功能设计模块, 用于将所述组件模型映射为功能组件模型, 并根据 所述组件界面图元将所述功能组件模型图形化显示为功能组件图元,根据用 户对所述功能组件图元的操作, 图形化建立待创建的应用中不同的所述功能 组件图元之间的关联关系, 并根据所述待创建的应用中不同的所述功能组件 图元之间的关联关系生成业务功能模型;
所述代码生成模块, 用于根据所述组件模型和所述业务功能模型, 生成 所述待创建的应用的可执行代码。
12、 根据权利要求 11 所述的创建应用的装置, 其特征在于, 所述组件 设计模块具体用于:
根据所述组件属性中的组件界面展现格式的属性值及组件界面展现数 据的属性值, 生成组件模型代码;
根据所述组件模型代码, 生成所述组件界面图元。
13、 根据权利要求 11 所述的创建应用的装置, 其特征在于, 所述功能 设计模块具体用于:
将所述组件模型的组件属性, 映射为所述功能组件模型的功能组件属 性; 将所述组件模型的组件关键标识, 映射为所述功能组件模型的功能组件 关键标识;
根据所述组件模型的组件关键标识, 获取所述功能组件关键标识对应的 功能组件展现代码; 或者, 根据所述组件关键标识对应的组件模型的组件展 现格式的属性值和组件界面展现数据的属性值, 生成所述功能组件关键标识 对应的功能组件展现代码;
根据所述组件关键标识对应的组件模型的位置坐标, 在功能组件界面对 应的位置坐标处, 4艮据所述功能组件展现代码渲染所述功能组件图元。
14、 根据权利要求 13所述的创建应用的装置, 其特征在于, 所述功能 设计模块进一步用于:
调用所述终端中预置的绘图工具的图形操作接口,根据所述组件关键标 识对应的位置坐标, 在功能组件界面对应的位置坐标处, 根据所述功能组件 展现代码渲染功能组件界面图元;
根据所述组件模型的组件属性, 自动联想映射所述功能组件属性图元。
15、 根据权利要求 11 所述的创建应用的装置, 其特征在于, 所述功能 设计模块进一步用于:
利用所述终端中预置的绘图工具的三维展现空间能力, 自动建模所述功 能组件图元的三维模型, 并根据用户配置的组件显示层次进行分层显示。
16、 根据权利要求 15所述的创建应用的装置, 其特征在于, 所述功能 设计模块具体用于:
检索所有组件类型为应用程序交互接口 API 的功能组件图元; 将 API 类型的功能组件界面图元的显示层次设置为最底层值, 以在最底层显示所述 API类型的功能组件界面图元; 将 API类型的功能组件界面图元对应的输入 输出属性图元的显示层次,设置为所述 API类型的功能组件界面图元的显示 层次加 1, 以在所述 API类型的功能组件界面图元的上方叠加显示附属的输 入输出属性图元;
检索所有组件类型为可视化用户交互界面 UI的功能组件图元; 根据所 述 UI类型的功能组件图元的显示层次, 显示所述 UI类型的功能组件图元。
17、 根据权利要求 11 所述的创建应用的装置, 其特征在于, 所述功能 设计模块进一步用于:
接收用户为所述功能组件图元进行颜色标注的标注颜色消息, 所述标注 颜色消息包括标注颜色、 标注时间戳, 以及功能组件图元对应的功能组件关 键标识;
根据所述标注颜色、 标注时间戳, 以及功能组件图元对应的功能组件关 键标识, 生成图元标注序列;
根据所述图元标注序列,确定所述待创建的应用中不同的所述功能组件 图元之间的关联关系。
18、 根据权利要求 17所述的创建应用的装置, 其特征在于, 所述功能 设计模块进一步用于:
将所述功能组件图元的前景色, 修改为所述标注颜色;
根据所述功能组件图元的前景色, 以及所述功能组件图元对应的标注时 间戳, 自动生成用于指示应用功能逻辑的标注顺序码。
19、 根据权利要求 11-18任一所述的创建应用的装置, 其特征在于, 所 述功能设计模块进一步用于:
根据所述待创建的应用中不同的所述功能组件图元之间的关联关系, 生 成功能组件图元关联序列;
根据所述图元关联序列、所述组件模型以及所述组件模型与功能组件图 元的映射关系, 生成所述业务功能模型。
20、 根据权利要求 11-18任一所述的创建应用的装置, 其特征在于, 所 述代码生成模块, 具体用于:
从所述业务功能模型中, 读取可视化用户交互界面 UI类型的功能组件 图元的属性; 从所述组件界面中对应的 UI组件的组件模型中, 获取与所述 UI类型的功能组件图元对应的已配置生成代码模板; 根据所述 UI类型的功 能组件图元的属性, 与所述对应的已配置生成代码模板, 生成即时渲染组件 代码;
从所述业务功能模型中,读取应用程序交互接口 API类型的功能组件图 元的属性; 从所述组件界面中对应的 API组件的组件模型中, 获取与所述 API类型的功能组件图元对应的已配置生成代码模板, 并根据 API组件声明 的引用库生成引用类库代码; 才艮据所述 API类型的功能组件图元的属性、 所 述对应的已配置生成代码模板以及所述引用类库代码, 生成 API功能代码; 根据所述功能组件图元的属性和所述待创建的应用中不同的所述功能 组件图元之间的关联关系, 生成用于控制所述 UI组件和所述 API组件交互 的脚本代码;
根据所述即时渲染组件代码、 所述 API功能代码, 以及所述脚本代码, 生成所述应用的可执行代码。
PCT/CN2014/075532 2013-05-31 2014-04-16 一种创建应用的方法及装置 WO2014190821A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US14/953,912 US9720658B2 (en) 2013-05-31 2015-11-30 Application creation method and apparatus

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201310213242.4A CN104216691B (zh) 2013-05-31 2013-05-31 一种创建应用的方法及装置
CN201310213242.4 2013-05-31

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US14/953,912 Continuation US9720658B2 (en) 2013-05-31 2015-11-30 Application creation method and apparatus

Publications (1)

Publication Number Publication Date
WO2014190821A1 true WO2014190821A1 (zh) 2014-12-04

Family

ID=51987976

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2014/075532 WO2014190821A1 (zh) 2013-05-31 2014-04-16 一种创建应用的方法及装置

Country Status (3)

Country Link
US (1) US9720658B2 (zh)
CN (1) CN104216691B (zh)
WO (1) WO2014190821A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109683939A (zh) * 2018-12-29 2019-04-26 北京小米移动软件有限公司 组件对象更新方法、装置以及存储介质
CN111279304A (zh) * 2017-09-29 2020-06-12 甲骨文国际公司 基于画布上连接的可定位元素配置通信决策树的方法和系统
CN114064188A (zh) * 2022-01-18 2022-02-18 深圳微迅信息科技有限公司 一种监控界面的设计方法、设计装置及电子设备
US11775843B2 (en) 2017-09-29 2023-10-03 Oracle International Corporation Directed trajectories through communication decision tree using iterative artificial intelligence

Families Citing this family (47)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10127023B2 (en) * 2013-09-20 2018-11-13 Oracle International Corporation Computer-aided development of native mobile application code
US9858321B2 (en) 2013-09-20 2018-01-02 Oracle International Corporation Accessing application services from forms
US9588742B2 (en) 2013-09-20 2017-03-07 Oracle International Corporation Rule-based automatic class generation from a JSON message
FR3038087B1 (fr) * 2015-06-29 2018-08-10 Commissariat A L'energie Atomique Et Aux Energies Alternatives Procede d'execution d'un programme d'ordinateur comportant une fonction parametree
CN105138322B (zh) * 2015-08-05 2018-10-19 移康智能科技(上海)股份有限公司 生成应用程序的方法及系统
CN105094847B (zh) * 2015-08-24 2018-09-07 佛吉亚好帮手电子科技有限公司 基于安卓系统的多图层可定制的按钮控件实现方法及系统
CN105224332B (zh) * 2015-10-14 2019-06-11 深圳市金证科技股份有限公司 一种应用程序生成方法和装置
US10180900B2 (en) * 2016-04-15 2019-01-15 Red Hat Israel, Ltd. Recordation of user interface events for script generation
CN106484394B (zh) * 2016-09-13 2019-07-12 厦门兆慧网络科技有限公司 一种双引擎快速软件开发系统
CN106502680B (zh) * 2016-10-31 2019-08-16 用友网络科技股份有限公司 一种通过可视化界面进行图元扩展的方法
CN108279890B (zh) * 2017-01-06 2021-12-24 阿里巴巴集团控股有限公司 组件发布方法、组件构建方法及图形化机器学习算法平台
CN108334387B (zh) * 2017-01-20 2021-03-16 阿里巴巴集团控股有限公司 动态界面渲染方法及装置
CN108519877A (zh) * 2017-02-28 2018-09-11 广东智源信息技术有限公司 一种基于配置式的开发模型
CN109240706A (zh) * 2017-05-09 2019-01-18 北京京东尚科信息技术有限公司 用于配置系统业务的方法、装置及电子设备
US10275292B1 (en) * 2017-06-27 2019-04-30 Northrup Grumman Systems Corporation Shadow Java classes provide private metadata
CN109542544A (zh) * 2017-09-22 2019-03-29 北京小度信息科技有限公司 界面显示方法及装置
CN107807814B (zh) * 2017-09-27 2021-10-26 百度在线网络技术(北京)有限公司 应用组件的构建方法、装置、设备及计算机可读存储介质
US11327471B2 (en) * 2017-10-26 2022-05-10 Siemens Aktiengesellschaft Building and tracking of an automation engineering environment
CN108415695A (zh) * 2018-01-25 2018-08-17 新智数字科技有限公司 一种基于可视化组件的数据处理方法、装置和设备
CN110362306A (zh) * 2018-04-11 2019-10-22 阿里巴巴集团控股有限公司 图形化算法组件的自定义方法、模型生成方法及装置
CN110471656A (zh) * 2018-05-10 2019-11-19 北京京东尚科信息技术有限公司 组件层级的调整方法和装置
CN109040822B (zh) * 2018-07-16 2021-06-22 北京奇艺世纪科技有限公司 播放器配置方法及装置、存储介质
CN110955474B (zh) * 2018-09-27 2023-09-05 杭州海康威视系统技术有限公司 一种应用系统中业务添加、业务调用方法、装置及设备
CN109491735B (zh) * 2018-10-16 2022-01-28 南京轨道交通系统工程有限公司 集成数据生成与校验的综合监控人机界面组态实现方法
CN109445774A (zh) * 2018-10-24 2019-03-08 北京奇虎科技有限公司 基于图元化操作的业务处理方法及装置
CN109324789A (zh) * 2018-11-01 2019-02-12 广州南洋理工职业学院 一种软件开发方法
CN109646955B (zh) * 2018-12-20 2022-06-24 网易(杭州)网络有限公司 游戏界面生成方法、装置和存储介质
US10922218B2 (en) * 2019-03-25 2021-02-16 Aurora Labs Ltd. Identifying software interdependencies using line-of-code behavior and relation models
CN110058985A (zh) * 2019-04-09 2019-07-26 美林数据技术股份有限公司 一种拖拽式构建企业级ai应用的系统及方法
CN112099779A (zh) * 2019-06-18 2020-12-18 深圳云天励飞技术有限公司 一种可视化操作界面生成的方法及相关装置
CN110244942B (zh) * 2019-06-19 2023-03-21 优信拍(北京)信息科技有限公司 一种页面生成方法、装置及系统
CN110955452B (zh) * 2019-09-05 2021-03-05 华为技术有限公司 一种非侵入式交互方法及电子设备
CN110989976A (zh) * 2019-11-29 2020-04-10 北京美络克思科技有限公司 基于J2EE的Web应用的组件化开发方法、存储介质和电子设备
CN111198674B (zh) * 2019-12-23 2021-10-15 华为技术有限公司 一种软件架构的可视化方法及装置
CN111158651A (zh) * 2019-12-26 2020-05-15 第四范式(北京)技术有限公司 构建人工智能应用的方法、装置及系统
CN111158797A (zh) * 2019-12-26 2020-05-15 第四范式(北京)技术有限公司 运行人工智能应用的方法、系统及引擎装置
WO2021129812A1 (zh) * 2019-12-26 2021-07-01 第四范式(北京)技术有限公司 运行人工智能应用的方法、系统及设备
CN113327671A (zh) * 2020-02-29 2021-08-31 华为技术有限公司 一种应用程序的生成方法与装置
CN111538498A (zh) * 2020-04-14 2020-08-14 北京宝兰德软件股份有限公司 一种应用创建方法、装置、电子设备及存储介质
CN113918138A (zh) * 2020-07-09 2022-01-11 阿里巴巴集团控股有限公司 流程处理方法、装置及计算机系统
US11449414B2 (en) 2020-08-26 2022-09-20 Spirent Communications, Inc. Mapping test parameter data elements during heterogeneous component-based testing in a portable automation framework in both API mode and UI mode
US11216347B1 (en) 2020-08-26 2022-01-04 Spirent Communications, Inc. Automatically locating resources using alternative locator expressions during heterogeneous component-based testing in a portable automation framework
US12013777B2 (en) * 2020-08-26 2024-06-18 Spirent Communications, Inc. Controlling heterogeneous component-based testing in a portable automation framework with test scripts in both API mode and UI mode
CN112256276A (zh) * 2020-10-30 2021-01-22 上海锘科智能科技有限公司 定义边缘设备行为的方法、装置及存储介质
CN112783483A (zh) * 2021-01-22 2021-05-11 平安普惠企业管理有限公司 基于悬浮按钮组件的功能创建方法、装置、设备及介质
CN114721647B (zh) * 2022-06-10 2022-09-16 杭州普数软件有限公司 一种基于无代码应用开发的面向对象编程方法
US20240078354A1 (en) * 2022-09-01 2024-03-07 Rockwell Automation Technologies, Inc. System and methods for modeling capabilities within system models of industrial systems

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101114226A (zh) * 2007-08-28 2008-01-30 北京中企开源信息技术有限公司 一种基于模型组件的代码自动生成装置、系统及方法
CN102222006A (zh) * 2011-07-22 2011-10-19 武汉天喻信息产业股份有限公司 移动Widget用户界面的实现方法及装置
CN102609271A (zh) * 2012-02-20 2012-07-25 山东大学 一种元数据驱动的SaaS应用的可视化定制方法及系统
CN102654833A (zh) * 2012-02-01 2012-09-05 中兴通讯(香港)有限公司 一种手机应用开发方法和系统

Family Cites Families (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6225998B1 (en) * 1997-12-02 2001-05-01 Aspect Communications Visual design of workflows for transaction processing
AU2001259107A1 (en) * 2000-04-21 2001-11-07 Togethersoft Corporation Methods and systems for supporting and deploying distributed computing components
US7039875B2 (en) * 2000-11-30 2006-05-02 Lucent Technologies Inc. Computer user interfaces that are generated as needed
US7631265B1 (en) * 2000-12-29 2009-12-08 Gateway, Inc. System and method for configuring and loading a user interface
US7627860B2 (en) * 2001-08-14 2009-12-01 National Instruments Corporation Graphically deployment of a program with automatic conversion of program type
US6985939B2 (en) * 2001-09-19 2006-01-10 International Business Machines Corporation Building distributed software services as aggregations of other services
KR100475432B1 (ko) * 2002-02-26 2005-03-10 삼성전자주식회사 그래픽 사용자 인터페이스의 디자인 변경 방법 및 이를 위한 기록매체
CN1459719A (zh) * 2002-05-17 2003-12-03 义隆电子股份有限公司 图形化开发程序的系统及方法
US20040036719A1 (en) 2002-08-26 2004-02-26 Van Treeck George Michael Quicker development of database applications having a graphical user interface
US20040090458A1 (en) * 2002-11-12 2004-05-13 Yu John Chung Wah Method and apparatus for previewing GUI design and providing screen-to-source association
US20060015844A1 (en) * 2003-07-30 2006-01-19 Wrd Corporation Automatic hardware and firmware generation for multi-function custom controls
CA2443454A1 (en) * 2003-09-11 2005-03-11 Teamplate Inc. Data binding method in workflow system
US7827527B1 (en) * 2004-02-12 2010-11-02 Chiluvuri Raju V System and method of application development
US8527943B1 (en) * 2004-02-12 2013-09-03 Raju V. Chiluvuri System and method of application development
US7849440B1 (en) * 2004-04-16 2010-12-07 The Mathworks, Inc. Real-time code preview for a model based development process
WO2005122078A2 (en) * 2004-06-04 2005-12-22 Sap Ag Consistent set of interfaces derived from a business object model
WO2006031640A2 (en) * 2004-09-10 2006-03-23 Graphlogic Inc. Object process graph application development system
US8170901B2 (en) * 2004-10-01 2012-05-01 Microsoft Corporation Extensible framework for designing workflows
US8478616B2 (en) * 2004-10-29 2013-07-02 FrontRange Solutions USA Inc. Business application development and execution environment
GB0426240D0 (en) * 2004-11-30 2004-12-29 Ibm Defining expressions in a meta-object model of an application
US7681176B2 (en) 2005-03-04 2010-03-16 Microsoft Corporation Generating a graphical designer application for developing graphical models
US7493594B2 (en) * 2005-03-14 2009-02-17 Research In Motion System and method for designing component based applications
US7979243B1 (en) * 2005-05-13 2011-07-12 The Mathworks, Inc. System and method for graphical model processing
US20080059504A1 (en) * 2005-11-30 2008-03-06 Jackie Barbetta Method and system for rendering graphical user interface
US8176468B2 (en) * 2005-12-01 2012-05-08 Cypress Semiconductor Corporation Multivariable transfer functions
US8112739B2 (en) * 2005-12-01 2012-02-07 Cypress Semiconductor Corporation Data driven transfer functions
US7716634B2 (en) * 2006-01-19 2010-05-11 Medseek Inc. System and method for building and modifying software applications
US7478332B2 (en) * 2006-05-24 2009-01-13 170 Systems Inc. System for and method of providing a user interface for a computer-based software application
US7644390B2 (en) * 2006-08-14 2010-01-05 Payman Khodabandehloo Design tool and methodology for enterprise software applications
US9501751B1 (en) * 2008-04-10 2016-11-22 Versionone, Inc. Virtual interactive taskboard for tracking agile software development
US8635177B2 (en) * 2009-08-17 2014-01-21 Adobe Systems Incorporated Rule-based binding
US9424005B1 (en) * 2009-12-09 2016-08-23 The Mathworks, Inc. Templatized component
US8966447B2 (en) * 2010-06-21 2015-02-24 Apple Inc. Capturing and displaying state of automated user-level testing of a graphical user interface application
US8869052B2 (en) * 2010-11-30 2014-10-21 Sap Se Context-dependent object types in an integrated development environment

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101114226A (zh) * 2007-08-28 2008-01-30 北京中企开源信息技术有限公司 一种基于模型组件的代码自动生成装置、系统及方法
CN102222006A (zh) * 2011-07-22 2011-10-19 武汉天喻信息产业股份有限公司 移动Widget用户界面的实现方法及装置
CN102654833A (zh) * 2012-02-01 2012-09-05 中兴通讯(香港)有限公司 一种手机应用开发方法和系统
CN102609271A (zh) * 2012-02-20 2012-07-25 山东大学 一种元数据驱动的SaaS应用的可视化定制方法及系统

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111279304A (zh) * 2017-09-29 2020-06-12 甲骨文国际公司 基于画布上连接的可定位元素配置通信决策树的方法和系统
CN111279304B (zh) * 2017-09-29 2023-08-15 甲骨文国际公司 基于画布上连接的可定位元素配置通信决策树的方法和系统
US11775843B2 (en) 2017-09-29 2023-10-03 Oracle International Corporation Directed trajectories through communication decision tree using iterative artificial intelligence
US11900267B2 (en) 2017-09-29 2024-02-13 Oracle International Corporation Methods and systems for configuring communication decision trees based on connected positionable elements on canvas
CN109683939A (zh) * 2018-12-29 2019-04-26 北京小米移动软件有限公司 组件对象更新方法、装置以及存储介质
CN109683939B (zh) * 2018-12-29 2023-05-02 北京小米移动软件有限公司 组件对象更新方法、装置以及存储介质
CN114064188A (zh) * 2022-01-18 2022-02-18 深圳微迅信息科技有限公司 一种监控界面的设计方法、设计装置及电子设备

Also Published As

Publication number Publication date
US9720658B2 (en) 2017-08-01
US20160085520A1 (en) 2016-03-24
CN104216691A (zh) 2014-12-17
CN104216691B (zh) 2017-11-17

Similar Documents

Publication Publication Date Title
WO2014190821A1 (zh) 一种创建应用的方法及装置
CN107832108B (zh) 3D canvas网页元素的渲染方法、装置及电子设备
US8614706B2 (en) Lightweight three-dimensional display
US8365203B2 (en) Method for creating a native application for mobile communications device in real-time
AU2009225393B2 (en) File access via conduit application
KR101494844B1 (ko) 메타 데이터를 이용한 차트 변환 시스템 및 그 방법
US11481948B2 (en) Method, device and storage medium for generating animation group by synthesizing animation layers based on tree structure relation between behavior information and sub-behavior information
Behr et al. Dynamic and interactive aspects of X3DOM
WO2019228013A1 (zh) 在3d模型上展示富文本的方法、装置及设备
WO2023093414A1 (zh) 微应用的开发方法、装置、设备、存储介质及程序产品
TW201947395A (zh) 頁面處理方法、裝置及設備
US20190080017A1 (en) Method, system, and device that invokes a web engine
US10282172B2 (en) Authoring and deploying television apps and pages in a content management system
JP2021512415A (ja) デジタルコンポーネントのバックドロップレンダリング
Schloss et al. Presentation layer primitives for the layered multimedia data model
Fujima Building a meme media platform with a JavaScript MVC framework and HTML5
CN115131470A (zh) 一种图文素材合成方法、装置、电子设备和存储介质
Hobson et al. Alpaca: AR graphics extensions for web applications
KR20140022137A (ko) N-스크린 적용을 위한 웹 어플리케이션 ui 저작 장치 및 그 저작 방법
Rapuru INTEGRATING ARCGIS AND REDUX USING MIDDLEWARE
Bray MapGuide open source
CN115469870A (zh) 文件在线处理的方法、装置、电子设备及介质
Li et al. Design and Implementation of SMEMD Based on JavaScript

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 14803905

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 14803905

Country of ref document: EP

Kind code of ref document: A1