Cross-language program development method and device and cross-language program execution method and device

Through the development devices and methods of cross-language programs, the main development platform, component addition modules and conversion components are used to solve the problem that different language functions are difficult to run in one program, and seamless integration of functions and simplification of development is achieved.

CN119668564AActive Publication Date: 2025-03-21INDUSTRIAL AND COMMERCIAL BANK OF CHINA
View PDF 7 Cites 0 Cited by

Patent Information

Application Number
CN202411963308.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-30
Publication Date
2025-03-21
Estimated Expiration
2044-12-30

AI Technical Summary

Technical Problem

Functions written in different languages ​​are difficult to run in a program, resulting in repetitive work and waste of resources, especially when developers of functional components are not familiar with the development language used by the main framework.

Method used

Provides a cross-language program development device and method, including a main development platform, component addition modules and conversion components. The main development platform is used to configure the main framework, the component addition module is used to add business execution components, and the conversion component is used to construct the operating environment of the business execution component in the main framework environment, realizing the communication connection between the main framework and the business execution component.

Benefits of technology

It realizes the functions written in different languages ​​to run seamlessly in one program, avoiding duplicate development and resource waste, reducing dependence on the main framework language, and simplifying the development process.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119668564A_ABST
    Figure CN119668564A_ABST
Patent Text Reader

Abstract

The invention provides a cross-language program development device and method which can be used in the financial science and technology field or other fields. The device comprises a main body development platform, a component adding module and a conversion component. Wherein the main body development platform is used for developing a main body framework. The component adding module is used for adding a business execution component different from the main body framework in implementation language, the main body framework runs in a first environment, and the business execution component runs in a second environment. The conversion component is used for receiving a response event of a control in the main body framework to the trigger event, constructing a second environment in the first environment when the response event is received, then loading the service execution component in the constructed second environment and triggering execution of a corresponding function, and converting the execution result into a format in the first environment and then transmitting the execution result back to a user interface of the main body frame. The invention further provides a cross-language program execution method and device, electronic equipment, a storage medium and a program product.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the field of software technology and can be used in the field of financial technology or other fields. More specifically, it relates to a cross-language program development device and method, a cross-language program execution method and device, electronic equipment, media and program products. Background Art

[0002] Applications are usually developed using a single programming language (such as C, C++, C#, or Java). This brings about a problem: functions written in different languages ​​are often difficult to run in one program. For example, if a function is developed in a certain language (such as a jar package), if you want to add this function to a program whose main framework is developed in another language, you need to redevelop the function component in the same language as the main framework, which will inevitably lead to duplication of work and waste of resources. Moreover, if the developer of the function component is not familiar with the development language used by the main framework, the difficulty of redeveloping the function component will be significantly increased, which is also a common situation. Summary of the invention

[0003] In view of the above problems, the present disclosure provides a cross-language program development device and method, a cross-language program execution method and device, an electronic device, a medium, and a program product.

[0004] A first aspect of the disclosed embodiment provides a cross-language program development device, which includes: a main development platform, a component adding module, and a conversion component.

[0005] The main body development platform is used to configure the main body framework, wherein the main body framework is implemented by a first language, and the operating environment of the first language is a first environment.

[0006] The component adding module is used to add a service execution component, wherein the service execution component is implemented by a second language, and the operating environment of the second language is a second environment.

[0007] The conversion component runs in the first environment, and is used to communicate with the main framework and construct the second environment in the first environment to load the business execution component in the constructed second environment.

[0008] The main framework includes a user interface and controls displayed in the user interface. The main development platform is also used to configure the trigger event of the control and the first binding relationship between the control and the first function in the business execution component. The conversion component is also used to receive a response event of the control to the trigger event, load the business execution component based on the first binding relationship and trigger the execution of the first function when the response event is received, and convert the execution result of the first function into the format in the first environment and then transmit it back to the user interface.

[0009] According to an embodiment of the present disclosure, the main development platform includes a configuration file, and the configuration file is used to configure the control, wherein the configuration file includes a plurality of nodes, and each node is used to configure specified information.

[0010] According to an embodiment of the present disclosure, the multiple nodes include a control node and a function node. The control node is used to configure the position information of the control in the user interface and the display properties of the control; and the function node is used to configure the trigger event of the control and the first binding relationship between the control and the first function in the business execution component.

[0011] According to an embodiment of the present disclosure, the plurality of nodes further include a startup node, and the startup node is used to configure preloading information of the control when the main framework is started.

[0012] According to an embodiment of the present disclosure, the preload information includes a second binding relationship between the control and a second function in the business execution component. The conversion component is further used to: load the business execution component based on the second binding relationship and trigger the execution of the second function when the main framework is started, and convert the execution result of the second function into a format in the first environment and then transmit it back to the user interface.

[0013] According to an embodiment of the present disclosure, the main development platform includes at least one container, and the container is used to configure the user interface.

[0014] According to an embodiment of the present disclosure, the at least one container includes an interface container and a table container.

[0015] The second aspect of the embodiment of the present disclosure provides a method for developing a cross-language program. The method includes: configuring a main framework, wherein the main framework is implemented by a first language, and the operating environment of the first language is the first environment; adding a business execution component, wherein the business execution component is implemented by a second language, and the operating environment of the second language is the second environment; and establishing a communication connection between the main framework and the business execution component through a conversion component; wherein the conversion component is run in the first environment, used to communicate with the main framework, and construct the second environment in the first environment to load the business execution component in the constructed second environment. Wherein, the main framework includes a user interface and a control displayed in the user interface. Correspondingly, the configuration of the main framework includes: configuring a trigger event of the control and a first binding relationship between the control and a first function in the business execution component. The establishment of a communication connection between the main framework and the business execution component through the conversion component includes configuring the conversion component to perform the following operations: receiving a response event of the control to the trigger event, loading the business execution component based on the first binding relationship and triggering the execution of the first function when the response event is received, and converting the execution result of the first function into a format in the first environment and transmitting it back to the user interface.

[0016] In the third aspect of the embodiment of the present disclosure, a method for executing a cross-language program is provided. The cross-language program includes a main framework, a business execution component and a conversion component, wherein the main framework is implemented by a first language, the business execution component is implemented by a second language, the operating environment of the first language is a first environment, and the operating environment of the second language is a second environment; the conversion component runs in the first environment and can construct the second environment in the first environment. The method includes: in response to receiving a start instruction, starting the main framework in the first environment, wherein the main framework includes a user interface and a control displayed in the user interface; in response to the start of the main framework, configuring the control, including configuring a trigger event of the control and a first binding relationship between the control and a first function in the business execution component; when the trigger event is received through the user interface, obtaining a response event of the control to the trigger event; and triggering the conversion component to perform the following operations based on the response event: constructing the second environment in the first environment; based on the first binding relationship, loading the business execution component in the constructed second environment and triggering the execution of the first function; and converting the execution result of the first function into a format in the first environment and returning it to the user interface.

[0017] According to an embodiment of the present disclosure, configuring the control includes: configuring the control by reading a configuration file of the control, wherein the configuration file includes a plurality of nodes, and each node is used to configure specified information.

[0018] According to an embodiment of the present disclosure, the multiple nodes include a control node and a function node, and the configuration of the control includes: configuring the position and display effect of the control in the user interface by reading the control node, wherein the control node is used to configure the position information of the control in the user interface and the display properties of the control; configuring the trigger event of the control and the first binding relationship between the control and the first function in the business execution component by reading the function node, wherein the function node is used to configure the trigger event and the first binding relationship.

[0019] According to an embodiment of the present disclosure, the multiple nodes also include a startup node, and the configuring the control also includes: configuring the preloading information of the control by reading the startup node, wherein the startup node is used to configure the preloading information of the control when the main framework is started.

[0020] According to an embodiment of the present disclosure, the preloading information includes a second binding relationship between the control and the second function in the business execution component, wherein the preloading information for configuring the control also includes: the conversion component reads the startup node, and executes based on the second binding relationship: constructs the second environment in the first environment, loads the business execution component based on the second binding relationship and triggers the execution of the second function, and converts the execution result of the second function into the format in the first environment and transmits it back to the user interface.

[0021] According to an embodiment of the present disclosure, starting the main framework in the first environment includes: acquiring at least one container for configuring the user interface; and loading the user interface based on information in the at least one container.

[0022] In a fourth aspect of the embodiments of the present disclosure, a device for executing a cross-language program is provided, wherein the cross-language program includes a main framework, a business execution component, and a conversion component, the main framework is implemented in a first language, the business execution component is implemented in a second language, the operating environment of the first language is a first environment, and the operating environment of the second language is a second environment; the conversion component runs in the first environment and can construct the second environment in the first environment. The device includes a startup unit, a configuration unit, and an interaction unit.

[0023] The starting unit is used to start a main frame in the first environment in response to receiving a starting instruction, wherein the main frame includes a user interface and controls displayed in the user interface.

[0024] The configuration unit is used to configure the control in response to the start of the main framework, including configuring a triggering event of the control and a first binding relationship between the control and a first function in a business execution component;

[0025] An interaction unit is used to: when a trigger event of the control is received through the user interface, obtain a response event of the control to the trigger event; and based on the response event, trigger a conversion component to perform the following operations: construct the second environment in the first environment; based on the first binding relationship, load the business execution component in the constructed second environment and trigger the execution of the first function; and convert the execution result of the first function into the format of the first environment and then transmit it back to the user interface.

[0026] The fifth aspect of the embodiments of the present disclosure provides an electronic device, comprising: one or more processors; a memory for storing one or more computer programs, wherein the one or more processors execute the one or more computer programs to implement the steps of the method provided in the second aspect or the third aspect.

[0027] The sixth aspect of the embodiments of the present disclosure further provides a computer-readable storage medium on which a computer program or instructions are stored. When the computer program or instructions are executed by a processor, the steps of the method provided in the second or third aspect are implemented.

[0028] The seventh aspect of the embodiments of the present disclosure further provides a computer program product, including a computer program or instructions, which, when executed by a processor, implement the steps of the method provided in the second or third aspect. BRIEF DESCRIPTION OF THE DRAWINGS

[0029] The above contents and other objects, features and advantages of the present disclosure will become more apparent through the following description of the embodiments of the present disclosure with reference to the accompanying drawings, in which:

[0030] Figure 1 The structure and calling logic of the cross-language program according to the embodiment of the present disclosure are schematically shown;

[0031] Figure 2 A schematic diagram showing an application scenario of a cross-language program development device, execution device, and method according to an embodiment of the present disclosure;

[0032] Figure 3 A schematic diagram schematically shows the structure of a cross-language program development device according to an embodiment of the present disclosure;

[0033] Figure 4 A schematic diagram schematically shows a configuration file in a main development platform in a cross-language program development device according to an embodiment of the present disclosure;

[0034] Figure 5 A flowchart schematically illustrates a method for developing a cross-language program according to an embodiment of the present disclosure;

[0035] Figure 6 A flowchart schematically illustrates a method for executing a cross-language program according to an embodiment of the present disclosure;

[0036] Figure 7 A flowchart of configuring controls in a method for executing a cross-language program according to another embodiment of the present disclosure is schematically shown;

[0037] Figure 8 A flowchart schematically shows a method for executing a cross-language program according to another embodiment of the present disclosure;

[0038] Fig. 9 A schematic diagram schematically shows the structure of a device for executing a cross-language program according to an embodiment of the present disclosure; and

[0039] Fig.10 The structure diagram of an electronic device suitable for implementing the cross-language program development method or execution method of the embodiment of the present disclosure is schematically shown. DETAILED DESCRIPTION

[0040] Hereinafter, embodiments of the present disclosure will be described with reference to the accompanying drawings. However, it should be understood that these descriptions are exemplary only and are not intended to limit the scope of the present disclosure. In the following detailed description, for ease of explanation, many specific details are set forth to provide a comprehensive understanding of the embodiments of the present disclosure. However, it is apparent that one or more embodiments may also be implemented without these specific details. In addition, in the following description, descriptions of known structures and technologies are omitted to avoid unnecessary confusion of the concepts of the present disclosure.

[0041] The terms used herein are only for describing specific embodiments and are not intended to limit the present disclosure. The terms "comprise", "include", etc. used herein indicate the existence of the features, steps, operations and / or components, but do not exclude the existence or addition of one or more other features, steps, operations or components.

[0042] All terms (including technical and scientific terms) used herein have the meanings commonly understood by those skilled in the art unless otherwise defined. It should be noted that the terms used herein should be interpreted as having a meaning consistent with the context of this specification and should not be interpreted in an idealized or overly rigid manner.

[0043] When using expressions such as "at least one of A, B, and C, etc.", they should generally be interpreted according to the meaning of the expression commonly understood by those skilled in the art (for example, "a system having at least one of A, B, and C" should include but is not limited to a system having A alone, B alone, C alone, A and B, A and C, B and C, and / or A, B, C, etc.).

[0044] Figure 1 The structure and calling logic of the cross-language program 100 according to an embodiment of the present disclosure are schematically shown.

[0045] like Figure 1 As shown, the cross-language program 100 of the embodiment of the present disclosure includes a main framework 110, a business execution component 130 and a conversion component 120. The main framework 110 is implemented by a first language, and the operating environment of the first language is a first environment. The main framework 110 includes a user interface and controls displayed in the user interface. The business execution component 130 is implemented by a second language, and the operating environment of the second language is a second environment. The conversion component 120 runs in the first environment and can construct a second environment in the first environment, wherein the conversion component 120 can communicate with the main framework 110 in the first environment, and load the business execution component 130 in the constructed second environment through the second environment constructed by it, thereby realizing the communication between the main framework 110 and the business execution component 130. For example, assuming that the main framework 110 is implemented by C# and the business execution component 130 is implemented by Java language, the first environment is the .NET framework and the second environment is the Java virtual machine. Correspondingly, the conversion component 120 is a component that runs in the .NET framework and can start a Java virtual machine process in the .NET framework.

[0046] In the embodiment of the present disclosure, the specific method of the main framework 110 calling the business execution component 130 is: receiving the trigger event (such as a click) of the control through the user interface, and then sending the response event of the control to the trigger event to the conversion component 120, and then the conversion component 120 calls the business execution component 130 to execute in the second environment, and converts the execution result into the format in the first environment and returns it to the user interface for display. In this way, the business execution component 130 in the cross-language program 100 of the embodiment of the present disclosure can be used only for the back-end business logic execution, while other functions are implemented by the main framework 110 and the conversion component 120. Therefore, when the main framework 110 developed in the first language needs to call the business execution component 130 developed in the second language, it can be realized by configuring the control accordingly in the main framework 110, avoiding the trouble of repeatedly developing the business execution component 130, and can also expand the function of the program.

[0047] In addition, with the development of Internet technology, the rise of web programs and the decline of desktop programs, most R&D personnel have turned from desktop program development to web program development. C#, as a desktop program development language, is no longer the current mainstream development language, and Java, a web program development language, has become one of the main languages. In some application scenarios (such as office scenarios, report preparation, etc.), desktop programs are still the main choice for program design due to their better interface interaction, richer functions, etc., but there is a great shortage of C# R&D personnel in the current development market, resulting in the inability to meet the development needs of desktop programs. For this problem, the cross-language program 100 of the embodiment of the present disclosure can be well solved, wherein the cross-language program 100 of the embodiment of the present disclosure can use C# and Java to develop desktop programs at the same time, such as using C# to develop the main framework 110, and then through the conversion component 120, the business execution component 130 developed in the Java language can be run in the program, realizing C# calling Java program modules, and the business logic can be implemented by the Java language, reducing the dependence on C# developers.

[0048] Figure 2 The application scenario diagram of the development device, execution device and method of the cross-language program 100 according to the embodiment of the present disclosure is schematically shown.

[0049] like Figure 2 As shown, the application scenario 200 according to this embodiment may include a first terminal device 201, a second terminal device 202, a third terminal device 203, a network 204, and a server 205. The network 204 is a medium for providing a communication link between the first terminal device 201, the second terminal device 202, the third terminal device 203, and the server 205. The network 204 may include various connection types, such as wired, wireless communication links, or optical fiber cables, etc.

[0050] The user may use the first terminal device 201, the second terminal device 202, and the third terminal device 203 to interact with the server 205 through the network 204 to receive or send messages, etc. Various communication client applications may be installed on the first terminal device 201, the second terminal device 202, and the third terminal device 203, such as shopping applications, web browser applications, search applications, instant messaging tools, email clients, software development tools, etc. (only examples).

[0051] The first terminal device 201, the second terminal device 202, and the third terminal device 203 may be various electronic devices having display screens and supporting web browsing, including but not limited to smart phones, tablet computers, laptop computers, desktop computers, and the like.

[0052] The server 205 may be a server that provides various services, such as a background management server that provides support for websites browsed by users using the first terminal device 201 , the second terminal device 202 , and the third terminal device 203 (only as an example).

[0053] It should be noted that the cross-language program development method or execution method provided in the embodiment of the present disclosure can generally be executed by the server 205. Accordingly, the cross-language program development device or execution device provided in the embodiment of the present disclosure can generally be set in the server 205. The cross-language program development method or execution method provided in the embodiment of the present disclosure can also be executed by a server or server cluster that is different from the server 205 and can communicate with the first terminal device 201, the second terminal device 202, the third terminal device 203 and / or the server 205. Accordingly, the cross-language program development device or execution device provided in the embodiment of the present disclosure can also be set in a server or server cluster that is different from the server 205 and can communicate with the first terminal device 201, the second terminal device 202, the third terminal device 203 and / or the server 205.

[0054] It should be understood that Figure 2 The number of terminal devices, networks and servers in the embodiment is only for illustration. Any number of terminal devices, networks and servers may be provided according to implementation requirements.

[0055] It should be noted that the methods and devices provided in the embodiments of the present disclosure can be used in the field of financial technology, and can also be used in any field other than the field of financial technology. The present disclosure does not limit the application field.

[0056] Figure 3 The structure diagram of a cross-language program development device 300 according to an embodiment of the present disclosure is schematically shown.

[0057] like Figure 3 As shown, the apparatus 300 may include a subject development platform 310, a component adding module 320 and a conversion component 120. The apparatus 300 may be implemented in a first language.

[0058] The main development platform 310 is used to configure the main framework 110, wherein the main framework 110 is implemented by a first language, and the operating environment of the first language is a first environment. The main framework 110 includes a user interface and controls displayed in the user interface.

[0059] The component adding module 320 is used to add a service execution component 130 . The service execution component 130 is implemented by a second language, and the operating environment of the second language is a second environment.

[0060] The conversion component 120 runs in the first environment, and is used to communicate with the main framework 110 and construct a second environment in the first environment to load the business execution component 130 in the constructed second environment. In the embodiment of the present disclosure, the conversion component 120 can be used to implement the first language calling the second language program. In one embodiment, the conversion component 120 can implement the conversion of the low-level language compiled from the second language to the low-level language compiled from the first language (such as the conversion of Java bytecode to .NET intermediate language), so that the business execution component 130 written in the second language can run in the first environment. In other embodiments, the conversion component 120 can also implement the conversion from the second language to the first language (such as the conversion of Java class library to .NET class library).

[0061] Furthermore, the main development platform 310 is also used to configure a triggering event of the control and a first binding relationship between the control and the first function in the business execution component 130 .

[0062] Accordingly, the conversion component 120 is also used to receive a response event of the control to the trigger event, and when receiving the response event, load the business execution component 130 based on the first binding relationship and trigger the execution of the first function, and convert the execution result of the first function into a format in the first environment and then return it to the user interface. The first function can be all functions in the business execution component 130, or it can also be part of the function (such as a specific function, class or method, etc.).

[0063] In this way, when developing a cross-language program 100 through the device 300, the main framework 110 can be developed in the first language in the main development platform 310, and the business execution component 130 developed in the second language can be added at the same time. Then, by configuring the corresponding controls in the main development platform 310, the business execution component 130 can be called through the conversion component 120 to execute specific backend logic and obtain execution results. In this way, repeated development of the business execution component 130 is avoided, the functional expansion of the main framework 110 is facilitated, and the development threshold of the business execution component 130 is lowered.

[0064] The conversion component 120 in the embodiment of the present disclosure may be a component written in the first language, or may be obtained by configuring an existing component (such as a converter for a Java virtual machine and bytecode to an intermediate language on a .NET platform).

[0065] In other embodiments, the main development platform 310 also includes at least one container (e.g., an interface container and a table container), wherein the container is used to configure the user interface. In one embodiment, an interface container can be preset in the code (the code implemented in the first language) of the main development platform 310 to display the configured user interface. For example, the layout is pre-processed in the interface container, which is divided into two parts, the upper part is the parameter area, the lower part is the button area, and a table container is placed in each area. In this way, developers can quickly develop the user interface by dragging, pulling, dragging, filling, etc. on the layout processing of the interface container and / or the table container in the main development platform 310, avoiding the use of the first language to write the user interface, and reducing the difficulty of development.

[0066] In some embodiments, the main development platform 310 may also include a configuration file, which is used to configure the control, wherein the configuration file includes multiple nodes, each of which is used to configure specified information. In this way, when developers configure controls in the main development platform 310, they can quickly configure controls by filling in the specified information of each node in the configuration file, thereby realizing low-code development.

[0067] In one embodiment, the multiple nodes in the configuration file can be divided into control nodes, function nodes and startup nodes, such as Figure 4 shown.

[0068] The control node is used to configure the position information of the control in the user interface and the display properties of the control (such as display effects such as style, elements, and color). In one embodiment, the control node defines the style and elements of each specific control in the user interface. The style includes element width, position layout, and echo value, and the elements include buttons, input boxes, labels, drop-down boxes, etc.

[0069] The function node is used to configure the trigger event of the control and the first binding relationship between the control and the first function in the business execution component 130. In one embodiment, the function node defines the trigger event bound to the control and the specific function (such as a jar package function) in the business execution component 130, in which the method name, parameter name, etc. of the function can be configured.

[0070] The startup node is used to configure the preloaded information (such as preloaded text information, image information, such as default values, etc.) of the control when the main framework 110 is started. By preloading the information, the execution result of the first function of the business execution component can be displayed on the user interface more quickly when the control is triggered.

[0071] In one embodiment, the preloading information configured in the startup node may include a second binding relationship between the control and the second function in the business execution component 130. For example, the startup node may define the functions, methods, calling methods, and interface linkage methods in the business execution component 130 that need to be preloaded in the control when the user interface is initialized. In this case, the conversion component 120 is also used to: read the second binding relationship defined in the startup node when the main framework 110 is started or the user interface is initialized, and load the business execution component 130 based on the second binding relationship and trigger the execution of the second function, and convert the execution result of the second function into the format in the first environment and then return it to the user interface. In this way, some function functions of the business execution component (such as the pre-function of the first function, such as some unchanged function functions, methods, parameters, etc.) can be preloaded in the control, and the execution speed of the first function in the business execution component when the control is triggered is improved, thereby improving the interactive response efficiency of the cross-language program.

[0072] In this way, the development device of the embodiment of the present disclosure provides a configurable container and a configuration file, so that developers can implement configurable development of user interfaces and controls by writing configurations. On the one hand, it simplifies the development process of the main framework 110, and on the other hand, it reduces the dependence on the first language when the developer is not familiar with the first language, thereby lowering the development threshold.

[0073] Figure 5 The flowchart of a method for developing a cross-language program 100 according to an embodiment of the present disclosure is schematically shown. The development method can be executed by a development device 300 .

[0074] Specifically, Figure 5 As shown, the development method may include operations S510 to S530, wherein operation S530 at least includes operations S531 to S533.

[0075] In operation S510, the main frame 110 is configured, and the main frame 110 includes a user interface and controls displayed in the user interface, so that configuring the main frame 110 includes configuring the user interface and controls. Configuring controls specifically includes configuring a triggering event of the control and a first binding relationship between the control and the first function in the business execution component 130.

[0076] In operation S520, a service execution component 130 is added. The service execution component 130 is implemented in a second language, and the operating environment of the second language is a second environment.

[0077] In operation S530, a communication connection is established between the main framework 110 and the business execution component 130 through the conversion component 120; wherein the conversion component 120 is run in the first environment, used to communicate with the main framework 110, and construct a second environment in the first environment to load the business execution component 130 in the constructed second environment.

[0078] Specifically, operation S530 includes configuring the conversion component 120, and specifically includes operations S531 to S533.

[0079] In operation S531 , the configuration conversion component 120 receives a response event of the control to the trigger event.

[0080] In operation S532 , when the configuration conversion component 120 receives the response event, it loads the service execution component 130 based on the first binding relationship and triggers the execution of the first function.

[0081] In operation S533 , the configuration conversion component 120 converts the execution result of the first function into a format in the first environment and transmits it back to the user interface.

[0082] In other embodiments, preloading information may be configured for the control. When the preloading information includes a second binding relationship between the control and the second function in the business execution component 130, the conversion component 120 may be further configured in operation S530 to perform the following operations: when the main framework 110 is started or the user interface is initialized, the preloading information configured for the control is read, and based on the second binding relationship therein, the business execution component 130 is loaded and the execution of the second function therein is triggered, and the execution result of the second function is converted into the format in the first environment and then transmitted back to the user interface.

[0083] The development method of the disclosed embodiment allows developers to add the business execution component 130 developed in the second language to the main framework 110 developed in the first language, and associate the triggering of the control with the business logic of the business execution component 130 through the configuration of the control, so as to call the back-end business logic execution through the conversion component 120 through the triggering of the control, and return the execution result to the user interface for display. This avoids the repeated development of business logic and facilitates the use of developers.

[0084] After the developer has developed the program using the development device of the embodiment of the present disclosure (e.g., the developer clicks submit), the development device can package the main framework 110 configured therein, the added business execution component 130, and the conversion component 120 together to form a cross-language program 100. The embodiment of the present disclosure accordingly provides an execution method applicable to the cross-language program. Figure 6~Figure 8 The execution method of the cross-language program according to the embodiment of the present disclosure is exemplarily introduced.

[0085] Figure 6 The flowchart schematically shows a method for executing a cross-language program according to an embodiment of the present disclosure.

[0086] like Figure 6 As shown, the method for executing a cross-language program according to the embodiment of the present disclosure may include operations S610 to S670.

[0087] In operation S610, in response to receiving a start instruction, the main body framework 110 is started in the first environment, wherein the main body framework 110 includes a user interface and controls displayed in the user interface.

[0088] In operation S620, in response to the start of the main framework 110, the control is configured, wherein the triggering event of the control and the first binding relationship between the control and the first function in the business execution component 130 are configured. Figure 4 Configure the control using the information in the configuration file shown below.

[0089] In operation S630, a trigger event of a control is received through a user interface.

[0090] In operation S640, in response to receiving the triggering event, a response event of the control to the triggering event is acquired.

[0091] In operation S650 , the conversion component 120 is triggered to construct a second environment in the first environment based on the response event.

[0092] In operation S660 , the conversion component 120 loads the service execution component 130 in the constructed second environment based on the first binding relationship and triggers execution of the first function.

[0093] Next, in operation S670, the execution result of the first function is converted into a format in the first environment and then transmitted back to the user interface.

[0094] In one embodiment, when a trigger event of a control occurs (such as a user clicking a button), the function node of the control in the configuration file can be read to find the detailed information of the first function to be called in the business execution component 130 (such as class name, method name, parameter type and parameter value, etc.), and then the target method in the business execution component 130 is called and executed through the conversion component 120, and the format conversion is performed after the execution result is obtained, and the process ends. In one embodiment, when the first language is C# language, the second language is Java language, and the conversion component 120 is configured for the converter for Java virtual machine and bytecode to intermediate language on the .NET platform, when a trigger event occurs, the function node in the configuration file is read to find the class name, method name, parameter type and parameter value of the method to be called, and then the converter for Java virtual machine and bytecode to intermediate language on the .NET platform is used to call the target method through the reflection mechanism, and wait for the jar package to return the call result information.

[0095] In the disclosed embodiment, when the cross-language program 100 is running, the triggering event of the control and the binding relationship between the control and the business execution component are first configured during the startup process, and then when the control is triggered, the business execution component is called by the conversion component, so that the back-end business execution logic is called by the triggering of the control, and finally the corresponding execution result of the business execution component is echoed to the user interface, so that the cross-language program 100 is effectively run. The cross-language call and execution of the back-end business logic is realized by the first language and the second language, and the business execution component 130 that realizes the business logic function can be written by the second language (such as Java language) that the developer is relatively familiar with, and the configuration of the user interface and the control in the main framework 110 is realized by using the first language (such as C# language) that is easy to realize user interaction (such as desktop interaction), so as to reduce the dependence on the development resources of the first language that the user is not familiar with while meeting the functional requirements, and at the same time, the advantages of the first language in user interaction can be brought into play, so as to meet the user experience and interaction requirements of the user interaction scene where the first language has a relatively advantageous position.

[0096] In one embodiment, Figure 7 As shown, the process of configuring the control in the above operation S620 may specifically include operations S721 to S726. Figure 4 Instructions are as follows.

[0097] First, in operation S721, the position and display effect of the control in the user interface are configured by reading the control node in the configuration file. Specifically, each control node in the configuration file can be read to determine the control type in the control node (such as Type: button / text label / input box / drop-down box), and dynamically create a corresponding control in the user interface; read other attribute information of the control in the control node, such as the control name, display text, row and column, control width, area, etc., and the created control can be added to the table container of the corresponding area in the user interface in sequence.

[0098] In operation S722, by reading the function node in the configuration file, the trigger event of the control and the first binding relationship between the control and the first function in the business execution component 130 are configured. Specifically, the control name in each function node in the configuration file can be read to find the newly created control, and the trigger event is bound to the control according to the information of the trigger event in the function node. At the same time, according to the information of the business execution component 130 (such as jar package name, class name) and the information of the first function (such as function name, method name) in the function node, the business logic is bound to the control to form the first binding relationship.

[0099] In operation S723, the preloading information of the control is configured by reading the startup node. In this embodiment, the preloading information may include a second binding relationship between the control and the second function in the service execution component 130.

[0100] Next, in operation S724 , the conversion component 120 reads the startup node in the configuration file, and constructs the second environment in the first environment based on the second binding relationship therein.

[0101] Then in operation S725 , the conversion component loads the service execution component 130 based on the second binding relationship and triggers execution of the second function.

[0102] Finally, in operation S726, the conversion component 120 converts the execution result of the second function into the format in the first environment and transmits it back to the user interface. The execution result of the second function is thus used to configure the control in the user interface, such as displaying the execution result of the second function as the initial value or default value of the control. In the disclosed embodiment, when the preloaded information in the startup node includes a second binding relationship, the conversion component can be triggered to load the function in the second binding relationship and echo the execution result. On the one hand, the initial display or default display of the second control before triggering can be kept consistent with when the back-end business logic is developed in the same language, so that the user does not feel it. On the other hand, when the second function is a pre-function of the first function (such as a related function or parameter), the response efficiency of the control when triggered can also be increased.

[0103] Figure 8The flowchart schematically shows a method for executing a cross-language program according to yet another embodiment of the present disclosure.

[0104] like Figure 8 As shown, the execution method of the cross-language program of the embodiment of the present disclosure may include operations S1 to S7. Taking the main framework 110 implemented by C# and the business execution component 130 implemented by Java language (eg, the business execution component 130 is a jar package) as an example, the description is as follows.

[0105] S1, after receiving the program start instruction, loading the main interface frame of the user interface of the cross-language program 100.

[0106] S2, loading configuration information of the user interface, such as various containers (interface container, table container) used to configure the interface frame and executing the initialization method of the interface in the container according to the configuration information in the container. For example, obtaining at least one container for configuring the user interface, and then loading the user interface based on the information in the at least one container.

[0107] S3, reading and parsing the control node in the configuration file through the control creation module, generating the control defined in the control node, and adding the control to the user interface for display according to the position information and display properties of the control in the control node.

[0108] S4, reading and parsing the function nodes in the configuration file through the event trigger module, binding the click trigger event to the dynamically generated control in S3 and the detailed information of the first function in the business execution component 130 for background execution of business logic.

[0109] S5, parsing the preloaded information in the startup node (echo configuration) in the configuration file through the event trigger module, and binding the control to the corresponding second function according to the preloaded information.

[0110] S6, during the loading of the user interface, the loading of the preloaded information in the startup node is triggered, the second environment is started in the first environment through the conversion component 120, the function function that implements the second function in the business execution component 130 is called, the response result is drawn to the user interface, the data is echoed, and the preloaded information configuration of the control is realized. For example, the JVM is started in the .NET environment through the conversion component 120 to call the function function that implements the second function in the jar package, and the response result is drawn to the interface.

[0111] S7, after the user interface is loaded, when the user operates the control in the user interface to generate a trigger event of the control, the first function of the business execution component 130 having a first binding relationship with the control is executed. Specifically, the second environment is started in the first environment by the conversion component 120, and various function functions, parameters, methods, etc. in the business execution component 130 that implement the first function are called, and the response results are displayed on the user interface to implement user interaction response. For example, the conversion component 120 starts the JVM in the .NET environment to call the function function in the jar package that implements the first function, and the response results are displayed on the interface.

[0112] Specifically, when the conversion component 120 loads a business execution component 130 (such as a jar package), a corresponding .NET type can be created according to the bytecode file of the business execution component 130. This type can contain various information of the Java class, such as class name, properties, methods, etc. In the .NET environment, this type can be used to dynamically obtain Java class information, create objects, call methods, etc. In this way, the main framework 110 loads the target Java program package through the conversion component 120, and then specifies the class name, method name, parameter type and parameter value of the calling method to implement the call of the Java target method.

[0113] In one embodiment, the execution method of the cross-language program of the embodiment of the present disclosure can be stored in the development device 300 in advance in the form of an execution script or a program module, and after the user uses the development device 300 to develop the cross-language program 100, the execution script is packaged into the installation package when the installation package of the cross-language program 100 is formed.

[0114] Through the disclosed embodiment, the cross-language program 100 can realize the accurate calling of the business execution components 130 implemented in different languages ​​by the main framework 110, and achieve the program development model and program execution effect with the second language as the main and the first language as the auxiliary. Among them, the business execution component 130 that implements the business logic function can be written in a second language (such as Java language) that the developer is more familiar with, and the configuration of the user interface and controls in the main framework 110 can be implemented by using a first language (such as C# language) that is easy to implement user interaction (such as desktop interaction), so as to reduce the dependence on the development resources of the first language that the user is not familiar with while meeting the functional requirements, and at the same time, it can give play to the advantages of the first language in user interaction, and meet the user experience and interaction requirements of the user interaction scene where the first language has a relatively advantageous position.

[0115] Through the embodiments of the present disclosure, when developing the main framework 110, both the user interface and controls can be developed by writing configurations. In this way, the low-code development method of the main framework 110 further reduces the dependence on the first language, especially in scenarios where there are no special technical requirements or complex business logic processing. This method allows users who are not familiar with first language programming to create, design and deploy the front-end interface of the application through configuration tools, thereby greatly accelerating the development process and lowering the development threshold.

[0116] Fig. 9 The structure diagram of the execution device 900 of the cross-language program 100 according to an embodiment of the present disclosure is schematically shown.

[0117] like Fig. 9 As shown, the execution device 900 may include a starting unit 910 , a configuration unit 920 and an interaction unit 930 .

[0118] The startup unit 910 is used to start the main frame 110 in the first environment in response to receiving the startup instruction, wherein the main frame 110 includes a user interface and controls displayed in the user interface. In one embodiment, the startup unit 910 can perform the operation S610 or the operations S1-S2 described above.

[0119] The configuration unit 920 is used to configure the control in response to the startup of the main framework 110. Specifically, the configuration unit 920 can be used to configure the triggering event of the control and the first binding relationship between the control and the first function in the business execution component 130. In one embodiment, the configuration unit 920 can perform the operation S620 or the operations S3 to S6 described above. In one embodiment, the configuration unit 920 can include the control creation module and the event triggering module described above.

[0120] The interaction unit 930 is used to: first receive a trigger event of the control through the user interface, then obtain a response event of the control to the trigger event in response to the received trigger event, then trigger the conversion component 120 to construct a second environment in the first environment based on the response event, load the business execution component 130 in the constructed second environment based on the first binding relationship and trigger the execution of the first function, and convert the execution result of the first function into the format in the first environment and then return it to the user interface. In one embodiment, the interaction unit 930 can perform the operations S630 to S670 or S7 described above.

[0121] The execution device 900 can execute reference Figure 6~Figure 8 The execution method of the cross-language program introduced above is described in detail in the previous article and will not be repeated here.

[0122] According to an embodiment of the present disclosure, any multiple modules among the main development platform 310, the component adding module 320, the startup unit 910, the configuration unit 920, the interaction unit 930, the control creation module and the event triggering module can be combined into one module for implementation, or any one of the modules can be split into multiple modules. Alternatively, at least part of the functions of one or more of these modules can be combined with at least part of the functions of other modules and implemented in one module. According to an embodiment of the present disclosure, at least one of the main development platform 310, the component adding module 320, the conversion component 120, the startup unit 910, the configuration unit 920, the interaction unit 930, the control creation module and the event triggering module can be at least partially implemented as a hardware circuit, such as a field programmable gate array (FPGA), a programmable logic array (PLA), a system on a chip, a system on a substrate, a system on a package, an application specific integrated circuit (ASIC), or can be implemented by hardware or firmware such as any other reasonable way of integrating or packaging the circuit, or implemented in any one of the three implementation modes of software, hardware and firmware or in a suitable combination of any of them. Alternatively, at least one of the main development platform 310, component adding module 320, conversion component 120, startup unit 910, configuration unit 920, interaction unit 930, control creation module and event triggering module can be at least partially implemented as a computer program module, which can perform corresponding functions when the computer program module is executed.

[0123] Fig.10 The structure diagram of an electronic device suitable for implementing the cross-language program development method or execution method of the embodiment of the present disclosure is schematically shown.

[0124] like Fig.10 As shown, the electronic device 1000 according to an embodiment of the present disclosure includes a processor 1001, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 1002 or a program loaded from a storage part 1008 to a random access memory (RAM) 1003. The processor 1001 may include, for example, a general-purpose microprocessor (such as a CPU), an instruction set processor and / or a related chipset and / or a special-purpose microprocessor (for example, an application-specific integrated circuit (ASIC)), etc. The processor 1001 may also include an onboard memory for caching purposes. The processor 1001 may include a single processing unit or multiple processing units for performing different actions of the method flow according to an embodiment of the present disclosure.

[0125] In RAM 1003, various programs and data required for the operation of electronic device 1000 are stored. Processor 1001, ROM 1002 and RAM 1003 are connected to each other via bus 1004. Processor 1001 performs various operations of the method flow according to the embodiment of the present disclosure by executing the program in ROM 1002 and / or RAM 1003. It should be noted that the program can also be stored in one or more memories other than ROM 1002 and RAM 1003. Processor 1001 can also perform various operations of the method flow according to the embodiment of the present disclosure by executing the program stored in one or more memories.

[0126] According to an embodiment of the present disclosure, the electronic device 1000 may further include an input / output (I / O) interface 1005, which is also connected to the bus 1004. The electronic device 1000 may further include one or more of the following components connected to the input / output (I / O) interface 1005: an input portion 1006 including a keyboard, a mouse, etc.; an output portion 1007 including a cathode ray tube (CRT), a liquid crystal display (LCD), etc., and a speaker, etc.; a storage portion 1008 including a hard disk, etc.; and a communication portion 1009 including a network interface card such as a LAN card, a modem, etc. The communication portion 1009 performs communication processing via a network such as the Internet. A drive 1010 is also connected to the input / output (I / O) interface 1005 as needed. A removable medium 1011, such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, etc., is installed on the drive 1010 as needed, so that a computer program read therefrom is installed into the storage portion 1008 as needed.

[0127] The present disclosure also provides a computer-readable storage medium, which may be included in the device / apparatus / system described in the above embodiments; or may exist independently without being assembled into the device / apparatus / system. The above computer-readable storage medium carries one or more programs, and when the above one or more programs are executed, the method according to the embodiment of the present disclosure is implemented.

[0128] According to an embodiment of the present disclosure, a computer-readable storage medium may be a non-volatile computer-readable storage medium, for example, may include but is not limited to: a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination thereof. In the present disclosure, a computer-readable storage medium may be any tangible medium containing or storing a program, which may be used by or in combination with an instruction execution system, an apparatus or a device. For example, according to an embodiment of the present disclosure, a computer-readable storage medium may include the ROM 1002 and / or RAM 1003 described above and / or one or more memories other than ROM 1002 and RAM 1003.

[0129] The embodiment of the present disclosure also includes a computer program product, which includes a computer program, and the computer program contains program code for executing the method shown in the flowchart. When the computer program product is run in a computer system, the program code is used to enable the computer system to implement the method provided by the embodiment of the present disclosure.

[0130] The above functions defined in the system / device of the embodiment of the present disclosure are performed when the computer program is executed by the processor 1001. According to the embodiment of the present disclosure, the system, device, module, unit, etc. described above can be implemented by a computer program module.

[0131] In one embodiment, the computer program may rely on tangible storage media such as optical storage devices, magnetic storage devices, etc. In another embodiment, the computer program may also be transmitted and distributed in the form of signals on a network medium, and downloaded and installed through the communication part 1009, and / or installed from the removable medium 1011. The program code contained in the computer program may be transmitted using any appropriate network medium, including but not limited to: wireless, wired, etc., or any suitable combination of the above.

[0132] In such an embodiment, the computer program can be downloaded and installed from the network through the communication part 1009, and / or installed from the removable medium 1011. When the computer program is executed by the processor 1001, the above functions defined in the system of the embodiment of the present disclosure are performed. According to the embodiment of the present disclosure, the system, device, means, module, unit, etc. described above can be implemented by a computer program module.

[0133] According to an embodiment of the present disclosure, the program code for executing the computer program provided by the embodiment of the present disclosure can be written in any combination of one or more programming languages. Specifically, these computing programs can be implemented using high-level process and / or object-oriented programming languages, and / or assembly / machine languages. Programming languages ​​include, but are not limited to, Java, C++, python, "C" language or similar programming languages. The program code can be executed entirely on the user computing device, partially on the user device, partially on the remote computing device, or entirely on the remote computing device or server. In the case of a remote computing device, the remote computing device can be connected to the user computing device through any type of network, including a local area network (LAN) or a wide area network (WAN), or can be connected to an external computing device (for example, using an Internet service provider to connect through the Internet).

[0134] The flow charts and block diagrams in the accompanying drawings illustrate the possible architecture, functions and operations of the systems, methods and computer program products according to various embodiments of the present disclosure. In this regard, each box in the flow chart or block diagram can represent a module, a program segment, or a part of a code, and the above-mentioned module, program segment, or a part of a code contains one or more executable instructions for realizing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the box can also occur in a different order from the order marked in the accompanying drawings. For example, two boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram or flow chart, and the combination of the boxes in the block diagram or flow chart can be implemented with a dedicated hardware-based system that performs a specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.

[0135] It will be appreciated by those skilled in the art that the features described in the various embodiments of the present disclosure may be combined and / or combined in a variety of ways, even if such combinations or combinations are not explicitly described in the present disclosure. In particular, without departing from the spirit and teachings of the present disclosure, the features described in the various embodiments of the present disclosure may be combined and / or combined in a variety of ways. All of these combinations and / or combinations fall within the scope of the present disclosure.

[0136] The embodiments of the present disclosure are described above. However, these embodiments are only for illustrative purposes and are not intended to limit the scope of the present disclosure. Although the embodiments are described above, this does not mean that the measures in the various embodiments cannot be used in combination to advantage. Without departing from the scope of the present disclosure, those skilled in the art may make a variety of substitutions and modifications, which should all fall within the scope of the present disclosure.

Claims

1. A cross-language program development device, wherein: The device comprises: A main body development platform, used for configuring a main body framework, wherein the main body framework is implemented by a first language, and the operating environment of the first language is a first environment; A component adding module, used for adding a service execution component, wherein the service execution component is implemented by a second language, and the operating environment of the second language is a second environment; A conversion component, running in the first environment, is used to communicate with the main framework and construct the second environment in the first environment to load the business execution component in the constructed second environment; Wherein, the main frame includes a user interface and controls displayed in the user interface; The main development platform is also used to: configure a triggering event of the control and a first binding relationship between the control and a first function in the business execution component; The conversion component is also used to: receive a response event of the control to the trigger event, load the business execution component based on the first binding relationship and trigger the execution of the first function when the response event is received, and convert the execution result of the first function into a format in the first environment and then return it to the user interface.

2. The cross-language program development device according to claim 1, wherein: The main development platform includes a configuration file, and the configuration file is used to configure the control, wherein the configuration file includes a plurality of nodes, and each node is used to configure specified information.

3. The cross-language program development device according to claim 2, wherein: The multiple nodes include control nodes and function nodes: The control node is used to configure the position information of the control in the user interface and the display properties of the control; and The function node is used to configure a triggering event of the control and a first binding relationship between the control and a first function in the business execution component.

4. The cross-language program development device according to claim 3, wherein: The plurality of nodes further include a startup node, and the startup node is used to configure preloading information of the control when the main framework is started.

5. The cross-language program development device according to claim 4, wherein: The preloading information includes a second binding relationship between the control and a second function in the service execution component; Among them, the conversion component is also used to: load the business execution component based on the second binding relationship and trigger the execution of the second function when the main framework is started, and convert the execution result of the second function into the format in the first environment and then return it to the user interface.

6. The cross-language program development device according to claim 1, wherein: The main development platform includes at least one container, and the container is used to configure the user interface.

7. The cross-language program development device according to claim 6, wherein: The at least one container includes an interface container and a table container.

8. A method for developing a cross-language program, wherein: The method comprises: Configuring a main framework, wherein the main framework is implemented in a first language, and the operating environment of the first language is a first environment; adding a service execution component, wherein the service execution component is implemented in a second language, and the operating environment of the second language is a second environment; and Establishing a communication connection between the main framework and the business execution component through a conversion component; wherein the conversion component is run in the first environment, is used to communicate with the main framework, and construct the second environment in the first environment to load the business execution component in the constructed second environment; The main frame includes a user interface and controls displayed in the user interface, wherein: The configuring the main framework includes: configuring a triggering event of the control and a first binding relationship between the control and a first function in the business execution component; The establishing of the communication connection between the main framework and the business execution component through the conversion component includes configuring the conversion component to perform the following operations: receiving a response event of the control to the trigger event, loading the business execution component based on the first binding relationship and triggering the execution of the first function when the response event is received, and converting the execution result of the first function into a format in the first environment and transmitting it back to the user interface.

9. A method for executing a cross-language program, wherein: The cross-language program includes a main framework, a business execution component and a conversion component, the main framework is implemented in a first language, the business execution component is implemented in a second language, the operating environment of the first language is a first environment, and the operating environment of the second language is a second environment; The conversion component runs in the first environment and is capable of constructing the second environment in the first environment; wherein the method comprises: In response to receiving the start instruction, start the main frame in the first environment, wherein the main frame includes a user interface and controls displayed in the user interface; In response to the start of the main framework, configuring the control, including configuring a triggering event of the control and a first binding relationship between the control and a first function in a business execution component; When a triggering event of the control is received through the user interface, obtaining a response event of the control to the triggering event; and The conversion component is triggered to perform the following operations based on the response event: constructing the second environment in the first environment; Based on the first binding relationship, loading the service execution component in the constructed second environment and triggering execution of the first function; and The execution result of the first function is converted into a format in the first environment and then transmitted back to the user interface.

10. The method for executing a cross-language program according to claim 9, wherein: The configuring the control comprises: The control is configured by reading a configuration file of the control, wherein the configuration file includes a plurality of nodes, and each node is used to configure specified information.

11. The method for executing a cross-language program according to claim 10, wherein: The plurality of nodes include control nodes and function nodes, and the configuring the control includes: By reading the control node, the position and display effect of the control in the user interface are configured, wherein the control node is used to configure the position information of the control in the user interface and the display properties of the control; The triggering event of the control and the first binding relationship between the control and the first function in the business execution component are configured by reading the function node, wherein the function node is used to configure the triggering event and the first binding relationship.

12. The method for executing a cross-language program according to claim 11, wherein: The plurality of nodes further include a startup node, and the configuring the control further includes: The preloading information of the control is configured by reading the startup node, wherein the startup node is used to configure the preloading information of the control when the main framework is started.

13. The method for executing a cross-language program according to claim 12, wherein: The preloading information includes a second binding relationship between the control and a second function in the service execution component, wherein the preloading information for configuring the control also includes: The conversion component reads the startup node and performs the following operations based on the second binding relationship: constructing the second environment in the first environment, loading the business execution component based on the second binding relationship and triggering the execution of the second function, and converting the execution result of the second function into the format in the first environment and returning it to the user interface.

14. The method for executing a cross-language program according to claim 9, wherein: The starting of the main framework in the first environment includes: Acquire at least one container for configuring the user interface; The user interface is loaded based on the information in the at least one container.

15. A cross-language program execution device, wherein: The cross-language program includes a main framework, a business execution component and a conversion component, the main framework is implemented in a first language, the business execution component is implemented in a second language, the operating environment of the first language is a first environment, and the operating environment of the second language is a second environment; The conversion component runs in the first environment and is capable of constructing the second environment in the first environment; wherein the device comprises: A starting unit, configured to start the main frame in the first environment in response to receiving a starting instruction, wherein the main frame includes a user interface and controls displayed in the user interface; A configuration unit, configured to configure the control in response to the start of the main framework, including configuring a triggering event of the control and a first binding relationship between the control and a first function in a business execution component; Interaction unit for: When a triggering event of the control is received through the user interface, obtaining a response event of the control to the triggering event; and Based on the response event, the conversion component is triggered to perform the following operations: constructing the second environment in the first environment; Based on the first binding relationship, loading the service execution component in the constructed second environment and triggering execution of the first function; and The execution result of the first function is converted into a format in the first environment and then transmitted back to the user interface.

16. An electronic device comprising: one or more processors; a memory for storing one or more computer programs, The one or more processors execute the one or more computer programs to implement the steps of the method according to any one of claims 8 or 9 to 14.

17. A computer-readable storage medium having a computer program or instruction stored thereon, wherein: When the computer program or instruction is executed by a processor, the steps of the method according to any one of claims 8 or 9 to 14 are implemented.

18. A computer program product comprising a computer program or instructions, wherein: When the computer program or instruction is executed by a processor, the steps of the method according to any one of claims 8 or 9 to 14 are implemented.

Citation Information

Patent Citations

  • Code language conversion method and device, electronic equipment and storage medium

    CN113138767A

  • Implementation method for game back-end multi-language development

    CN113703732A

  • Program running method and device, electronic equipment and storage medium

    CN113918214A

  • Development platform of multilanguage software program

    CN1725178A

  • Characterizing software components or SOA services of a computerized system by context

    US20080168423A1