CN117008961A - Code processing method and related device - Google Patents

Code processing method and related device Download PDF

Info

Publication number
CN117008961A
CN117008961A CN202211020622.1A CN202211020622A CN117008961A CN 117008961 A CN117008961 A CN 117008961A CN 202211020622 A CN202211020622 A CN 202211020622A CN 117008961 A CN117008961 A CN 117008961A
Authority
CN
China
Prior art keywords
code
code block
target code
target
information
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
CN202211020622.1A
Other languages
Chinese (zh)
Inventor
陈越威
林桂鸿
覃奋翔
张勇军
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202211020622.1A priority Critical patent/CN117008961A/en
Publication of CN117008961A publication Critical patent/CN117008961A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/75Structural analysis for program understanding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management

Abstract

The embodiment of the application discloses a code processing method and a related device, at least relating to the technologies of cloud technology, machine learning in artificial intelligence and the like, realizing code analysis of an incremental file, realizing state tracing of the same code block in code files of different versions, completing accurate positioning of the code block and improving the query accuracy of code data of the code block. The method comprises the following steps: acquiring incremental file information of an object code file; determining position information and code difference information of a target code block in the incremental file information; determining state information of the target code block based on the position information and the code difference information; generating a mapping relation between the state information of the target code block and the storage path of the target code file; and sending the mapping relation to the server, wherein the mapping relation is used for the server to acquire the code data of the target code block of the target code file.

Description

Code processing method and related device
Technical Field
The embodiment of the application relates to the technical field of computers, in particular to a code processing method and a related device.
Background
In a class or method, a piece of code, which is bracketed "{ }, may be referred to as a block of code. By locating the code block, the code data of the code block can be queried so as to display the code data of the code block.
In the related scheme, the positioning of the code blocks can be achieved by taking the code line numbers as unique characteristic values. That is, in the specified code file of the specified version, the code line number information of the code blocks can be obtained by means of regular expression matching and the like, so that static code analysis is performed on one code warehouse by using the code line number as a unique characteristic value, and further the line number information of all the code blocks in the code warehouse under the specified version is obtained. And then, reporting the line number information of the code block to a server, wherein the server takes the code line number information of the code block as an index to inquire code data of the corresponding code block, so that terminal equipment can conveniently display the code data of the code block.
However, the code blocks are positioned by taking the code line number as the unique characteristic value, only the code analysis of the full-quantity file can be executed, and when the code analysis of the incremental file is performed, the corresponding code blocks in two analyzed versions in the same code file cannot be mapped and matched with each other, so that the state circulation process of the same code block in different versions cannot be traced, further, the code blocks cannot be accurately positioned, and the code data of the code blocks cannot be accurately queried.
Disclosure of Invention
The embodiment of the application provides a code processing method and a related device, which can realize code analysis of an incremental file, realize state tracing of the same code block in code files of different versions, finish accurate positioning of the code block in the code files of different versions and improve the query accuracy of code data of the code block.
In a first aspect, an embodiment of the present application provides a method for processing a code. The method comprises the following steps: acquiring incremental file information of an object code file; determining position information of a target code block and code difference information of the target code block in the incremental file information, wherein the code difference information of the target code block is used for indicating the difference condition between the code position of the target code block when the target code block is positioned in a first version code and the code position of the target code block when the target code block is positioned in a second version code, and the first version code and the second version code are two adjacent code files with different versions of the target code file; determining state information of the target code block based on the position information and the code difference information, wherein the state information is used for indicating the state update condition of the target code block; generating a mapping relation between the state information of the target code block and the storage path of the target code file; and sending the mapping relation to the server, wherein the mapping relation is used for the server to acquire the code data of the target code block of the target code file.
In a second aspect, an embodiment of the present application provides a terminal device. The terminal device comprises an acquisition unit, a processing unit and a sending unit. The acquisition unit is used for acquiring incremental file information of the target code file; the processing unit is used for determining position information of the target code block and code difference information of the target code block in the incremental file information, wherein the code difference information of the target code block is used for indicating the difference condition between the code position of the target code block when the target code block is positioned in the first version code and the code position of the target code block when the target code block is positioned in the second version code, and the first version code and the second version code are two adjacent code files with different versions of the target code file; a processing unit for determining status information of the target code block based on the position information and the code difference information, the status information being used for indicating a status update condition of the target code block; the processing unit is used for generating a mapping relation between the state information of the target code block and the storage path of the target code file; and the sending unit is used for sending the mapping relation to the server, wherein the mapping relation is used for the server to acquire the code data of the target code block of the target code file.
In some embodiments, the obtaining unit is configured to perform feature extraction processing on the target code block based on a preset extraction model, and obtain a starting position of the target code block, where the preset extraction model corresponds to a programming language of the target code file. The processing unit is used for determining the level nesting depth information of the target code block based on the indentation length of the starting position of the target code block; determining an end position of the target code block based on the hierarchical nesting depth information of the target code block, the end position of the target code block having a retract length that is the same as a retract length of the start position of the target code block; the position information of the target code block in the delta file information is determined based on the start position of the target code block and the end position of the target code block.
In other embodiments, the obtaining unit is configured to obtain an abstract syntax tree corresponding to the object code file, where the abstract syntax tree includes at least one syntax node. The processing unit is used for determining the position information of the target code block in the incremental file information according to the node type of the grammar node.
In other embodiments, the processing unit is configured to: calculating the similarity between the code position of the target code block when the target code block is positioned in the first version code and the code position of the target code block when the target code block is positioned in the second version code; code difference information of the target code block is determined based on the similarity.
In other embodiments, the acquisition unit is configured to: source code information of the target code block is acquired. The processing unit is used for generating a first hash value corresponding to the target code block when the target code block is positioned in the first version code and a second hash value corresponding to the target code block when the target code block is positioned in the second version code according to the source code information; calculating the similarity between the first hash value and the second hash value; code difference information of the target code block is determined based on the similarity.
In other embodiments, the acquisition unit is configured to: a first code line number is obtained for indicating a code position of a code line in the target code block in the first version code and a second code line number for indicating a code position of a code line in the target code block in the second version code. The processing unit is used for; determining code position change information of the target code block based on the first code line number and the second code line number; status information of the target code block is determined based on the code location change information of the target code block.
In a third aspect, an embodiment of the present application provides a server. The server comprises an acquisition unit and a processing unit. Wherein, the acquisition unit is used for: the method comprises the steps of obtaining a mapping relation sent by terminal equipment, wherein the mapping relation is used for indicating the association relation between state information of a target code block and a storage path of a target code file, the target code block is a code block in incremental file information in the target code file, the state information of the target code block is obtained based on position information of the target code block and code difference information of the target code block, the state information is used for indicating the state updating condition of the target code block, and the code difference information of the target code block is used for indicating the difference condition between a code position of the target code block when the target code block is located in a first version code and a code position when the target code block is located in a second version code, and the first version code and the second version code are two adjacent code files of different versions of the target code file. And the processing unit is used for acquiring code data of the target code block of the target code file according to the mapping relation.
In some embodiments, the server further comprises a sending unit. The transmitting unit is used for transmitting code data of an object code block of the object code file to the terminal device for the terminal device to display the code data of the object code block.
A fourth aspect of an embodiment of the present application provides a code processing apparatus, including: memory, input/output (I/O) interfaces, and memory. The memory is used for storing program instructions. The processor is configured to execute program instructions in the memory to perform a method of code processing corresponding to the implementation manner of the first aspect.
A fifth aspect of the embodiments of the present application provides a computer-readable storage medium having instructions stored therein, which when run on a computer, cause the computer to perform a method corresponding to an embodiment of the first aspect described above.
A sixth aspect of the embodiments of the present application provides a computer program product comprising instructions which, when run on a computer or processor, cause the computer or processor to perform the method described above to perform the embodiment of the first aspect described above.
From the above technical solutions, the embodiment of the present application has the following advantages:
In the embodiment of the application, the position information of the target code block and the code difference information of the target code block in the incremental file information are further determined by acquiring the incremental file information of the target code file. The code difference information of the target code block can indicate a difference condition between a code position of the target code block when the target code block is positioned in the first version code and a code position of the target code block when the target code block is positioned in the second version code, wherein the first version code and the second version code are two adjacent code files with different versions of the target code file. Then, status information of the target code block is determined based on the position information and the code difference information, the status information being capable of indicating a status update condition of the target code block. In this way, by generating a mapping relationship between the state information of the target code block and the storage path of the target code file, and transmitting the mapping relationship to the server, the server is enabled to acquire the code data of the target code block of the target code file based on the mapping relationship. By the method, the code analysis of the incremental file can be realized, the circulation state of the target code block in different code files can be obtained based on the state information of the target code block, so that the state tracing of the same code block in the code files of different versions is realized, the accurate positioning of the code block in the code files of different versions is completed, and the query accuracy of the code data of the code block is improved.
Drawings
In order to more clearly illustrate the embodiments of the application or the technical solutions in the prior art, the drawings that are required in the embodiments or the description of the prior art will be briefly described, it being obvious that the drawings in the following description are only some embodiments of the application, and that other drawings may be obtained according to these drawings without inventive effort for a person skilled in the art.
FIG. 1 is a schematic diagram of a system architecture provided by an embodiment of the present application;
FIG. 2 illustrates a flow chart of a method of code processing provided by an embodiment of the present application;
FIG. 3 is a schematic diagram of an abstract syntax tree according to an embodiment of the present application;
fig. 4 shows a schematic structural diagram of a terminal device according to an embodiment of the present application;
fig. 5 shows a schematic structural diagram of a server according to an embodiment of the present application;
fig. 6 shows a schematic hardware structure of a code generating apparatus according to an embodiment of the present application.
Detailed Description
The embodiment of the application provides a code processing method and a related device, which can realize code analysis of an incremental file, realize state tracing of the same code block in code files of different versions, finish accurate positioning of the code block in the code files of different versions and improve the query accuracy of code data of the code block.
It will be appreciated that in the specific embodiments of the present application, related data such as user information, personal data of a user, etc. are involved, and when the above embodiments of the present application are applied to specific products or technologies, user permission or consent is required, and the collection, use and processing of related data is required to comply with relevant laws and regulations and standards of relevant countries and regions.
The following description of the embodiments of the present application will be made clearly and completely with reference to the accompanying drawings, in which it is apparent that the embodiments described are only some embodiments of the present application, but not all embodiments. All other embodiments, which can be made by those skilled in the art based on the embodiments of the application without making any inventive effort, are intended to be within the scope of the application.
The terms "first," "second," "third," "fourth" and the like in the description and in the claims and in the above drawings, if any, are used for distinguishing between similar objects and not necessarily for describing a particular sequential or chronological order. It is to be understood that the data so used may be interchanged where appropriate such that the embodiments described herein may be implemented in other sequences than those illustrated or otherwise described herein. Furthermore, the terms "comprises," "comprising," and "having," and any variations thereof, are intended to cover a non-exclusive inclusion, such that a process, method, system, article, or apparatus that comprises a list of steps or elements is not necessarily limited to those steps or elements expressly listed but may include other steps or elements not expressly listed or inherent to such process, method, article, or apparatus.
The method for processing codes provided by the embodiment of the application is realized based on artificial intelligence (artificial intelligence, AI). Artificial intelligence is the theory, method, technique and application system that uses a digital computer or a digital computer-controlled machine to simulate, extend and expand human intelligence, sense the environment, acquire knowledge and use the knowledge to obtain optimal results. In other words, artificial intelligence is an integrated technology of computer science that attempts to understand the essence of intelligence and to produce a new intelligent machine that can react in a similar way to human intelligence. Artificial intelligence, i.e. research on design principles and implementation methods of various intelligent machines, enables the machines to have functions of sensing, reasoning and decision.
The artificial intelligence technology is a comprehensive subject, and relates to the technology with wide fields, namely the technology with a hardware level and the technology with a software level. Artificial intelligence infrastructure technologies generally include technologies such as sensors, dedicated artificial intelligence chips, cloud computing, distributed storage, big data processing technologies, operation/interaction systems, mechatronics, and the like. The artificial intelligence software technology mainly comprises a computer vision technology, a voice processing technology, a natural language processing technology, machine learning/deep learning and other directions.
In the embodiments of the present application, the artificial intelligence techniques mainly include the above-mentioned directions of machine learning and the like. For example, deep learning (deep learning) in Machine Learning (ML) may be involved, including artificial neural networks, and the like.
The method for processing the codes provided by the application can be applied to a code processing device with data processing capability, such as a terminal device, a server and the like. The terminal device may include, but is not limited to, a smart phone, a desktop computer, a notebook computer, a tablet computer, a smart speaker, a vehicle-mounted device, a smart watch, and the like. The server may be an independent physical server, a server cluster or a distributed system formed by a plurality of physical servers, or a cloud server for providing cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, CDNs, basic cloud computing services such as big data and artificial intelligent platforms, and the like. In addition, the terminal device and the server may be directly connected or indirectly connected by wired communication or wireless communication, and the present application is not particularly limited.
The above-mentioned code processing apparatus may be provided with machine learning capabilities. Machine Learning (ML) is a multi-domain interdisciplinary, involving multiple disciplines such as probability theory, statistics, approximation theory, convex analysis, algorithm complexity theory, etc. It is specially studied how a computer simulates or implements learning behavior of a human to acquire new knowledge or skills, and reorganizes existing knowledge structures to continuously improve own performance. Machine learning is the core of artificial intelligence, a fundamental approach to letting computers have intelligence, which is applied throughout various areas of artificial intelligence. Machine learning and deep learning typically involve neural networks and the like.
In addition, the above-mentioned code processing apparatus may also have processing capability to implement cloud technology (closed technology). The described cloud technology refers to a hosting technology for unifying serial resources such as hardware, software, network and the like in a wide area network or a local area network to realize calculation, storage, processing and sharing of data. Cloud technology (cloud technology) is based on the general terms of network technology, information technology, integration technology, management platform technology, application technology and the like applied by cloud computing business models, and can form a resource pool, so that the cloud computing business model is flexible and convenient as required. Cloud computing technology will become an important support. Background services of technical networking systems require a large amount of computing, storage resources, such as video websites, picture-like websites, and more portals. Along with the high development and application of the internet industry, each article possibly has an own identification mark in the future, the identification mark needs to be transmitted to a background system for logic processing, data with different levels can be processed separately, and various industry data needs strong system rear shield support and can be realized only through cloud computing.
The mentioned cloud computing (closed computing) is a computing mode that distributes computing tasks over a resource pool of a large number of computers, enabling various application systems to acquire computing power, storage space, and information services as needed. The network that provides the resources is referred to as the "cloud". Resources in the cloud are infinitely expandable in the sense of users, and can be acquired at any time, used as needed, expanded at any time and paid for use as needed. As a basic capability provider of cloud computing, a cloud computing resource pool (called a cloud platform for short, generally called an infrastructure as a service (infrastructure as a service, iaaS) platform is established, and multiple types of virtual resources are deployed in the resource pool for external clients to select for use.
Since in the related scheme, the code analysis of the full-volume file can be performed only by means of locating the code blocks with the code line number as a unique feature value. Moreover, during code analysis of the incremental file, corresponding code blocks in two analyzed versions in the same code file cannot be mapped and matched with each other, state circulation state tracing of the same code block in different versions cannot be achieved, and further the code block cannot be accurately positioned, so that code data of the code block cannot be accurately queried.
Based on the above, the embodiment of the application provides a code processing method. The code processing method can be applied to a static code analysis system; the method can also be applied to version control systems like Github, gitLab; or can also be applied to an integrated development environment such as VScode, eclipse; or can also be applied to continuous integration continuous test systems like Coding, jenkins, github Action and the like. In practical application, the method for processing codes provided by the embodiment of the application can also be applied to other application scenes, and the specific application scenes are not limited in the embodiment of the application.
The above-mentioned method of code processing may be applied, for example, in the system architecture shown in fig. 1. As shown in fig. 1, the system architecture includes a terminal device and a server. After receiving the query request sent by the server, the terminal device obtains the incremental file information of the target code file from the code warehouse based on the query request, and further determines the position information of the target code block and the code difference information of the target code block in the incremental file information. The code difference information of the target code block can indicate a difference between a code position of the target code block when the target code block is located in the first version code and a code position when the target code block is located in the second version code. Then, the terminal device determines state information of the target code block based on the position information and the code difference information, the state information being capable of indicating a state update condition of the target code block. In this way, the terminal device generates a mapping relationship between the state information of the object code block and the storage path of the object code file, and transmits the mapping relationship to the server. After receiving the mapping relation, the server can acquire code data of the target code block in the target code file based on the mapping relation.
It should be noted that the above-described object code blocks may include, but are not limited to, method (method) code blocks, class (class) code blocks, function (function) code blocks, and the like. In the following embodiments, only the object code block is taken as an example of a method code block to describe a method for processing codes provided in the embodiments of the present application. In addition, the first version code and the second version code described can be understood as two adjacent code files of different versions obtained when the modification and the like are performed on the target code file.
In order to facilitate understanding of the technical solution of the present application, taking a scenario in which a code processing method is applied to a static code analysis system as an example, a code processing method provided by an embodiment of the present application is described below with reference to the accompanying drawings.
Fig. 2 shows a flowchart of a method for code processing according to an embodiment of the present application. As shown in fig. 2, the method of code processing may include the steps of:
201. the server sends a query request to the terminal device.
In this example, the target object needs to trigger an analysis flow for a code block in the code repository in the static code analysis system in order to see if the code block in the code repository that is too complex has changed in the new version of the code file. At this time, a query request may be sent to the idle terminal device through the server of the static code analysis system, so that the terminal device may acquire incremental file information of the target code file in the code repository for the corresponding code repository.
The described delta file information is understood to mean that in a version control system, new code version is compared with changed files in old code version, including states of adding, deleting, modifying, etc. the code. The version control system mentioned is a system that records one or several file content transformations for later review of a particular version revision. In addition, the mentioned static code analysis system refers to a system that performs program code analysis without running a computer program.
202. The terminal equipment acquires the incremental file information of the target code file.
In this example, after receiving the query request sent by the server, the terminal device may obtain the incremental file information of the target code file from the code repository based on the query request. The mentioned incremental file information may be understood with reference to the content shown in the foregoing step 201, and will not be described herein.
203. The terminal device determines the location information of the target code block in the delta file information.
In this example, after the terminal device obtains the incremental file information of the target code file from the code repository, the location information of the corresponding target code block may be determined from the incremental file information. Illustratively, taking the method code block as an object code block as an example, the terminal device may implement the determination of the location information of the object code block in the delta file information through a method code block identification tool. The described method code block identification tool may support, but does not include, C, C ++, objective-C, C ++, java, python, go, rust, and Kotlin programming languages, and embodiments of the present application are not particularly limited. In order to adapt to the grammar complexity characteristics of different programming languages, the embodiment of the application can analyze the incremental file information based on a regular expression or an abstract grammar tree technology so as to acquire the position information of the corresponding target code block.
In some examples, the terminal device determines the location information of the target code block in the incremental file information based on the regular expression, and the specific implementation process can be understood as follows: and the terminal equipment performs feature extraction processing on the target code block based on a preset extraction model, and obtains the starting position of the target code block, wherein the preset extraction model corresponds to the programming language of the target code file. Then, the terminal device determines hierarchical nesting depth information of the target code block based on the retracted length of the start position of the target code block, and determines the end position of the target code block based on the hierarchical nesting depth information of the target code block. It will be appreciated that the indentation length of the ending location of the target code block is the same as the indentation length of the starting location of the target code block. In this way, the terminal device determines the position information of the target code block in the delta file information based on the start position of the target code block and the end position of the target code block.
In this example, the terminal device may identify, from the file suffix of the object code file, which programming language the object code file belongs to. Such as: the programming language corresponding to the code file of the Java suffix is Java; alternatively still, the programming language corresponding to the code file of the py suffix is Python, etc. Moreover, as different programming languages are adapted to different preset extraction models, feature extraction can be performed on code blocks in code files using different programming languages through the preset extraction models so as to match the starting positions of the code blocks. Therefore, after determining the programming language of the target code file, the terminal device may perform feature extraction on the target code block based on a preset extraction model adapted to the programming language of the target code file, so as to obtain the starting position of the target code block. For example, the following Python codes are a method definition, namely:
def test():
pass
The starting position of the method code block may be located using the following regular expression matching: def\s\w (..times.).
In contrast, in other programming languages, such as Java, the code structure hierarchy is represented in curly brackets.
The terminal device may write the starting position of the target code block into the position mapping table, and create a level counter to record the level of the current target code block, so as to determine the level nesting depth information of the target code block through the retracting scene of the starting position of the target code block, so as to obtain the ending position of the target code block according to the level nesting depth information. The described end position of the object code block has the same indentation length as the start position. In this way, after acquiring the end position of the target code block, the terminal device can determine the position information of the target code block based on the start position and the end position of the target code block.
In some examples, the terminal device may also determine location information of the target code block based on an abstract syntax tree. Illustratively, the terminal device may obtain an abstract syntax tree corresponding to the object code file, the abstract syntax tree comprising at least one syntax node. Then, the terminal device determines the position information of the target code block in the delta file information according to the node type of the grammar node.
The abstract syntax tree described is an important component in the compilation process. Various programming languages follow the idea of the principle of compilation, which is a process of translating code strings into machine code binaries. Based on the compilation principle, code of various programming languages can be converted into abstract syntax trees (abstract syntax tree, AST). Specifically, the construction process of the abstract syntax tree can be roughly divided into two parts of lexical analysis and syntax analysis. In the lexical analysis process, firstly, a lexical analyzer divides a source code character string according to blank characters to obtain each morpheme, and then all morphemes are constructed into a morpheme stream according to the sequence. In the process of grammar analysis, a morpheme stream is input into a grammar analyzer, the grammar analyzer creates an automatic state conversion machine of a corresponding programming language, and according to the input morpheme, keywords and identifiers (such as def, class, object identifiers in Python) of the corresponding programming language are matched, so that a corresponding code structure is constructed. The described code structures include, but are not limited to class, enum, function, etc. Thus, the code files are built into abstract syntax trees based on the interrelationships between the code structures.
An abstract syntax tree is an abstract representation of the syntax structure of source code, which is a syntax structure representing a programming language in the form of a tree, each node on the tree representing a structure in the source code. For example, the following Python codes may be converted into corresponding abstract syntax trees, i.e. Python codes are:
the abstract syntax tree corresponding to the Python code described above can be understood with reference to the schematic diagram shown in fig. 3. Note that only the necessary data in the Python code is shown in fig. 3, and the other data such as the column and row position information of the code is not shown in fig. 3 as auxiliary data.
Moreover, nodes on the abstract syntax tree are divided into at least two node types, such as method code block nodes and other types of nodes. In this way, after the terminal device obtains the abstract syntax tree corresponding to the object code file, the terminal device may perform traversal processing of the syntax node on the tree, and determine the location information of the corresponding method code block by determining whether the node type of the syntax node belongs to the method definition node.
204. The terminal equipment determines code difference information of an object code block, wherein the code difference information of the object code block is used for indicating the difference condition between the code position of the object code block when the object code block is positioned in a first version code and the code position of the object code block when the object code block is positioned in a second version code, and the first version code and the second version code are adjacent two code files with different versions of the object code file.
In this example, after the terminal device obtains the incremental file information in the object code file, the terminal device may also determine the code difference information of the object code block in the incremental file information. The code difference information mentioned can be understood as the situation of the position difference between the code position of the object code block in the first version code and the code position in the second version code. The described code disparity information may include disparity line number information and the like. The first version code and the second version code are described as being understood to be adjacent two different versions of code files that are generated when the object code file is modified. For example, a first version code may be understood as a last modified version of the code file of the second version code; alternatively, the second version code may be understood as a code file of a last modified version of the first version code, and the steps in the embodiment of the present application are specifically limited.
For example, the terminal device may acquire a code position when the target code block is located in the first version code and acquire a code position when the target code block is located in the second version code. Then, the terminal device may calculate a similarity between the code position of the target code block when the target code block is located in the first version code and the code position of the target code block when the target code block is located in the second version code, and determine code difference information of the target code block according to the similarity.
In other examples, the terminal device may also obtain source code information of the target code block, and generate, according to the source code information, a first hash value corresponding to when the target code block is located in the first version code, and generate a second hash value corresponding to when the target code block is located in the second version code. Then, the terminal device calculates the similarity between the first hash value and the second hash value, and determines code difference information of the target code block according to the similarity. Schematically, when the similarity is smaller than a certain preset threshold, the version codes corresponding to the two hash values with the minimum similarity can be matched with each other. In addition, when the larger-scale code is changed, hash values meeting preset conditions can be summarized into the same hash (hash) pool, and hash values corresponding to the same code file or the code blocks of the method under the same code block level are screened into the same hash pool, so that the hash values can be compared in the same hash pool. By screening the hash values meeting the preset conditions to the same hash pool, the comparison range can be reduced, the number of hash value comparison can be changed from exponential growth to linear growth, and the time consumption is greatly reduced.
The execution sequence of the steps 203 and 204 is not specifically limited in practical application. For example, in practical applications, step 204 may be performed first, and then step 203 may be performed; alternatively, step 203 and step 204 may be performed simultaneously, which is not limited in the embodiment of the present application.
205. The terminal device determines state information of the target code block based on the position information and the code difference information, the state information being used to indicate a state update condition of the target code block.
In this example, after acquiring the location information and the code difference information of the target code block, the terminal device can determine the status information of the target code block according to the location information and the code difference information. The described state information can indicate a state update condition of the object code block. The status update condition may include, but is not limited to, a status of add, delete, modify, etc.
Illustratively, the determining of the status information of the target code block by the terminal device based on the location information and the code difference information of the target code block may be achieved with reference to the following manner, namely: acquiring a first code line number and a second code line number, wherein the first code line number is used for indicating the code position of a code line in a target code block in a first version code, and the second code line number is used for indicating the code position of the code line in the target code block in a second version code; determining code position change information of the target code block based on the first code line number and the second code line number; status information of the target code block is determined based on the code location change information of the target code block.
In this example, after the terminal device obtains the location information and the code difference information of the target code block, the terminal device may perform, according to the location information and the code difference information of the target code block, matching and status change judgment of the target code block in the first version code and the target code block in the second version code according to the processing logic of the status flow converter. Specifically, in the case where the target code file is a modified code file, if the same change line falls in the code position of the code block a in the first version code and the code position of the code block B in the second version code, the code block a and the code block B may be considered to be the same target code block, and the state information of the target code block may be determined to be modified. Similarly, if the same change line falls into the code position of code block a in the first version code and does not fall into the code position of code block B in the second version code, the state information of the target code block (i.e., code block a) may be determined to be newly added. Similarly, if the same change line does not fall into the code position of the code block a in the first version code but falls into the code position of the code block B in the second version code, the state information of the target code block (i.e., the code block B) can be considered to be determined to be deleted.
Illustratively, in the case where the object code file is a newly added code file, the state information of the object code blocks in the object code file is set to be newly added. Similarly, in the case where the code file to be deleted is a code file, the state information of the target code block in the code file is set to be deleted.
206. The terminal device generates a mapping relation between the state information of the object code block and the storage path of the object code file.
In this example, after obtaining the state information of the target code block, the terminal device may bind the state information of the target code block with the storage path of the target code file to generate a mapping relationship between the state information of the target code block and the storage path of the target code file.
207. And the terminal equipment sends the mapping relation to the server.
In this example, the terminal device may send the mapping relationship between the state information of the object code block and the storage path of the object code file to the server after generating the mapping relationship.
208. And the server acquires code data of the target code block of the target code file according to the mapping relation.
In this example, after the terminal device sends the mapping relationship to the server, the server may receive the mapping relationship. In this way, the server can further acquire the code data of the target code block of the target code file according to the mapping relationship. Schematically, after the server obtains the mapping relationship, the server may cover the code data of the code blocks in the old version code according to the path data of the target code file, and obtain the code data of the target code blocks in the corresponding new version code.
The server may also, illustratively, after acquiring the code data of the target code block, send the code data of the target code block to the terminal device, which terminal device reveals the code data of the target code block to be displayed.
In the embodiment of the application, the position information of the target code block and the code difference information of the target code block in the incremental file information are further determined by acquiring the incremental file information of the target code file. The code difference information of the target code block can indicate a difference condition between a code position of the target code block when the target code block is positioned in the first version code and a code position of the target code block when the target code block is positioned in the second version code, wherein the first version code and the second version code are two adjacent code files with different versions of the target code file. Then, status information of the target code block is determined based on the position information and the code difference information, the status information being capable of indicating a status update condition of the target code block. In this way, by generating a mapping relationship between the state information of the target code block and the storage path of the target code file, and transmitting the mapping relationship to the server, the server is enabled to acquire the code data of the target code block of the target code file based on the mapping relationship. By the method, the code analysis of the incremental file can be realized, the state tracing of the same code block in the code files of different versions is realized, the accurate positioning of the code block in the code files of different versions is completed, and the query accuracy of the code data of the code block is improved. Schematically, the embodiment of the present application further provides a time-consuming comparison verification result of the existing scheme and the scheme of the present application, which is specifically understood with reference to the following table 1, namely:
TABLE 1
From table 1, it can be seen that before the method for processing codes provided by the embodiment of the present application is used for optimizing, each analysis task is to perform a full analysis, all the method code blocks in the code warehouse need to be analyzed, the larger the code warehouse is, the longer the analysis time is, the larger the corresponding analysis result is, thereby causing higher requirements on network IO bandwidth and the like, and further causing longer time for reporting the result to the server. After the scheme of code processing provided by the embodiment of the application is used, each analysis task is incremental analysis, only the file of which the version is changed relative to the previous version is needed to be analyzed, the time consumption is greatly reduced, the size of an analysis result transmitted to a server is correspondingly reduced, and the burden of the server is greatly reduced.
The foregoing description of the solution provided by the embodiments of the present application has been mainly presented in terms of a method. It should be understood that, in order to implement the above-described functions, hardware structures and/or software modules corresponding to the respective functions are included. Those of skill in the art will readily appreciate that the various illustrative modules and algorithm steps described in connection with the embodiments disclosed herein may be implemented as hardware or combinations of hardware and computer software. Whether a function is implemented as hardware or computer software driven hardware depends upon the particular application and design constraints imposed on the solution. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present application.
The embodiment of the application can divide the functional modules of the device according to the method example, for example, each functional module can be divided corresponding to each function, and two or more functions can be integrated in one processing module. The integrated modules may be implemented in hardware or in software functional modules. It should be noted that, in the embodiment of the present application, the division of the modules is schematic, which is merely a logic function division, and other division manners may be implemented in actual implementation.
The following describes the terminal device in the embodiment of the present application in detail, and fig. 4 is a schematic diagram of an embodiment of the terminal device provided in the embodiment of the present application. As shown in fig. 4, the terminal device may include an acquisition unit 401, a processing unit 402, and a transmission unit 403.
Wherein, the obtaining unit 401 is configured to obtain incremental file information of the object code file.
A processing unit 402, configured to determine location information of an object code block in the delta file information and code difference information of the object code block, where the code difference information of the object code block is used to indicate a difference condition between a code location when the object code block is located in a first version code and a code location when the object code block is located in a second version code, and the first version code and the second version code are two adjacent code files of different versions of the object code file; determining state information of the target code block based on the position information and the code difference information, wherein the state information is used for indicating the state update condition of the target code block; a mapping relationship between the state information of the object code block and the storage path of the object code file is generated.
A sending unit 403, configured to send a mapping relationship to a server, where the mapping relationship is used for the server to obtain code data of an object code block of an object code file.
In some embodiments, the obtaining unit 401 is configured to perform feature extraction processing on the target code block based on a preset extraction model, and obtain a starting position of the target code block, where the preset extraction model corresponds to a programming language of the target code file. The processing unit 402 is configured to determine hierarchical nesting depth information of the target code block based on a retracted length of a start position of the target code block; determining an end position of the target code block based on the hierarchical nesting depth information of the target code block, the end position of the target code block having a retract length that is the same as a retract length of the start position of the target code block; the position information of the target code block in the delta file information is determined based on the start position of the target code block and the end position of the target code block.
In other embodiments, the obtaining unit 401 is configured to obtain an abstract syntax tree corresponding to the object code file, where the abstract syntax tree includes at least one syntax node. The processing unit 402 is configured to determine location information of the target code block in the delta file information according to the node type of the syntax node.
In other embodiments, the processing unit 402 is configured to: calculating the similarity between the code position of the target code block when the target code block is positioned in the first version code and the code position of the target code block when the target code block is positioned in the second version code; code difference information of the target code block is determined based on the similarity.
In other embodiments, the obtaining unit 401 is configured to: source code information of the target code block is acquired. A processing unit 402, configured to generate, according to the source code information, a first hash value corresponding to when the target code block is located in the first version code, and a second hash value corresponding to when the target code block is located in the second version code; calculating the similarity between the first hash value and the second hash value; code difference information of the target code block is determined based on the similarity.
In other embodiments, the obtaining unit 401 is configured to: a first code line number is obtained for indicating a code position of a code line in the target code block in the first version code and a second code line number for indicating a code position of a code line in the target code block in the second version code. The processing unit 402 is configured to; determining code position change information of the target code block based on the first code line number and the second code line number; status information of the target code block is determined based on the code location change information of the target code block.
The following describes a server in the embodiment of the present application in detail, and fig. 5 is a schematic diagram of an embodiment of the server provided in the embodiment of the present application. As shown in fig. 5, the server may include an acquisition unit 501, and a processing unit 502. The server may also illustratively include a sending unit 503. Wherein, the acquisition unit 501 is used for: the method comprises the steps of obtaining a mapping relation sent by terminal equipment, wherein the mapping relation is used for indicating the association relation between state information of a target code block and a storage path of a target code file, the target code block is a code block in incremental file information in the target code file, the state information of the target code block is obtained based on position information of the target code block and code difference information of the target code block, the state information is used for indicating the state updating condition of the target code block, and the code difference information of the target code block is used for indicating the difference condition between a code position of the target code block when the target code block is located in a first version code and a code position when the target code block is located in a second version code, and the first version code and the second version code are two adjacent code files of different versions of the target code file.
The processing unit 502 is configured to obtain code data of an object code block of the object code file according to the mapping relationship.
In some embodiments, the sending unit 503 is configured to send code data of the target code block of the target code file to the terminal device, for the terminal device to display the code data of the target code block.
The code processing apparatus in the embodiment of the present application is described above from the viewpoint of a modularized functional entity, and the code processing apparatus in the embodiment of the present application is described below from the viewpoint of hardware processing. The described code processing means may be a terminal device as shown in fig. 4, a server as shown in fig. 5, or the like. Fig. 6 is a schematic structural diagram of a code processing apparatus according to an embodiment of the present application. The code processing apparatus may vary considerably depending on configuration or performance. The code processing apparatus may include at least one processor 601, communication lines 607, memory 603, and at least one communication interface 604.
The processor 601 may be a general purpose central processing unit (central processing unit, CPU), microprocessor, application-specific integrated circuit (server IC), or one or more integrated circuits for controlling the execution of programs in accordance with aspects of the present application.
Communication line 607 may include a path to communicate information between the above components.
The communication interface 604 uses any transceiver-like device for communicating with other devices or communication networks, such as ethernet, radio access network (radio access network, RAN), wireless local area network (wireless local area networks, WLAN), etc.
The memory 603 may be a read-only memory (ROM) or other type of static storage device that may store static information and instructions, a random access memory (random access memory, RAM) or other type of dynamic storage device that may store information and instructions, and the memory may be stand-alone and coupled to the processor via a communication line 607. The memory may also be integrated with the processor.
The memory 603 is used for storing computer-executable instructions for executing the present application, and is controlled by the processor 601 for execution. The processor 601 is configured to execute computer-executable instructions stored in the memory 603, thereby implementing the method provided by the above-described embodiment of the present application.
Alternatively, the computer-executable instructions in the embodiments of the present application may be referred to as application program codes, which are not particularly limited in the embodiments of the present application.
In a specific implementation, the code processing apparatus may include a plurality of processors, such as processor 601 and processor 602 in fig. 6, as an embodiment. Each of these processors may be a single-core (single-CPU) processor or may be a multi-core (multi-CPU) processor. A processor herein may refer to one or more devices, circuits, and/or processing cores for processing data (e.g., computer program instructions).
In a specific implementation, as an embodiment, the code processing apparatus may further include an output device 605 and an input device 606. The output device 605 communicates with the processor 601 and may display information in a variety of ways. The input device 606 is in communication with the processor 601 and may receive input of a target object in a variety of ways. For example, the input device 606 may be a mouse, a touch screen device, a sensing device, or the like.
The code processing apparatus may be a general-purpose apparatus or a special-purpose apparatus. In a specific implementation, the code processing apparatus may be a server, a terminal device, or the like, or an apparatus having a similar structure in fig. 6. The embodiment of the application is not limited to the type of the code processing device.
It should be noted that the processor 601 in fig. 6 may cause the code processing apparatus to execute the method in the method embodiment corresponding to fig. 2 by calling the computer-executable instructions stored in the memory 603.
In particular, the functions/implementation of the processing unit 402 in fig. 4 and the processing unit 502 in fig. 5 may be implemented by the processor 601 in fig. 6 calling computer executable instructions stored in the memory 603. The functions/implementation procedures of the acquisition unit 401 and the transmission unit 403 in fig. 4, the acquisition unit 501 and the transmission unit 503 in fig. 5 can be implemented by the communication interface 604 in fig. 6.
The embodiment of the present application also provides a computer storage medium storing a computer program for electronic data exchange, the computer program causing a computer to execute part or all of the steps of any one of the identification code processes described in the above method embodiments.
Embodiments of the present application also provide a computer program product comprising a non-transitory computer-readable storage medium storing a computer program operable to cause a computer to perform some or all of the steps of a method of any one of the code processes described in the method embodiments above.
In the above embodiments, it may be implemented in whole or in part by software, hardware, firmware, or any combination thereof. When implemented in software, may be implemented in whole or in part in the form of a computer program product.
It will be clear to those skilled in the art that, for convenience and brevity of description, specific working procedures of the above-described systems, apparatuses and units may refer to corresponding procedures in the foregoing method embodiments, which are not repeated herein.
In the several embodiments provided in the present application, it should be understood that the disclosed systems, devices, and methods may be implemented in other manners. For example, the apparatus embodiments described above are merely illustrative, e.g., the division of elements is merely a logical functional division, and there may be additional divisions of actual implementation, e.g., multiple elements or components may be combined or integrated into another system, or some features may be omitted, or not performed. Alternatively, the coupling or direct coupling or communication connection shown or discussed with each other may be an indirect coupling or communication connection via some interfaces, devices or units, which may be in electrical, mechanical or other form.
The units described as separate units may or may not be physically separate, and units shown as units may or may not be physical units, may be located in one place, or may be distributed over a plurality of network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
In addition, each functional unit in the embodiments of the present application may be integrated in one processing unit, or each unit may exist alone physically, or two or more units may be integrated in one unit. The integrated units may be implemented in hardware or in software functional units.
The integrated units, if implemented in the form of software functional units and sold or used as stand-alone products, may be stored in a computer readable storage medium. Based on such understanding, the technical solution of the present application may be embodied in essence or a part contributing to the prior art or all or part of the technical solution in the form of a software product stored in a storage medium, including several instructions for causing a computer device (which may be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the methods of the embodiments of the present application. And the aforementioned storage medium includes: a U-disk, a removable hard disk, a read-only memory (ROM), a random access memory (random access memory, RAM), a magnetic disk, or an optical disk, or other various media capable of storing program codes.
The above-described embodiments may be implemented in whole or in part by software, hardware, firmware, or any combination thereof, and when implemented in software, may be implemented in whole or in part in the form of a computer program product.
The computer program product includes one or more computer instructions. When the computer-executable instructions are loaded and executed on a computer, the processes or functions in accordance with embodiments of the present application are fully or partially produced. The computer may be a general purpose computer, a special purpose computer, a computer network, or other programmable apparatus. The computer instructions may be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another computer-readable storage medium, for example, the computer instructions may be transmitted from one website, computer, server, or data center to another website, computer, server, or data center by a wired (e.g., coaxial cable, fiber optic, digital Subscriber Line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.). Computer readable storage media can be any available media that can be stored by a computer or data storage devices such as servers, data centers, etc. that contain an integration of one or more available media. Usable media may be magnetic media (e.g., floppy disks, hard disks, magnetic tape), optical media (e.g., DVD), or semiconductor media (e.g., SSD)), or the like.
The above embodiments are only for illustrating the technical solution of the present application, and are not limiting; although the application has been described in detail with reference to the foregoing embodiments, it will be understood by those of ordinary skill in the art that: the technical scheme described in the foregoing embodiments can be modified or some technical features thereof can be replaced by equivalents; such modifications and substitutions do not depart from the spirit and scope of the technical solutions of the embodiments of the present application.

Claims (12)

1. A method of code processing, comprising:
acquiring incremental file information of an object code file;
determining position information of an object code block in the incremental file information and code difference information of the object code block, wherein the code difference information of the object code block is used for indicating the difference condition between a code position of the object code block when the object code block is positioned in a first version code and a code position of the object code block when the object code block is positioned in a second version code, and the first version code and the second version code are code files of two adjacent different versions of the object code file;
determining state information of the target code block based on the position information and the code difference information, wherein the state information is used for indicating the state update condition of the target code block;
Generating a mapping relation between the state information of the target code block and the storage path of the target code file;
and sending the mapping relation to a server, wherein the mapping relation is used for the server to acquire the code data of the target code block of the target code file.
2. The method of claim 1, wherein the determining location information of the target code block in the delta file information comprises:
performing feature extraction processing on the target code block based on a preset extraction model, and acquiring the initial position of the target code block, wherein the preset extraction model corresponds to the programming language of the target code file;
determining hierarchical nesting depth information of the target code block based on a retracted length of a starting position of the target code block;
determining an end position of the target code block based on the hierarchical nested depth information of the target code block, wherein a retracted length of the end position of the target code block is the same as a retracted length of a start position of the target code block;
position information of the target code block in the delta file information is determined based on a start position of the target code block and an end position of the target code block.
3. The method of claim 1, wherein the determining location information of the target code block in the delta file information comprises:
acquiring an abstract syntax tree corresponding to the target code file, wherein the abstract syntax tree comprises at least one syntax node;
and determining the position information of the target code block in the incremental file information according to the node type of the grammar node.
4. A method according to any one of claims 1 to 3, wherein said determining code difference information for a target code block comprises:
calculating the similarity between the code position of the target code block when the target code block is positioned in the first version code and the code position of the target code block when the target code block is positioned in the second version code;
code difference information of the target code block is determined based on the similarity.
5. A method according to any one of claims 1 to 3, wherein said determining code difference information for a target code block comprises:
acquiring source code information of the target code block;
generating a first hash value corresponding to the target code block when the target code block is positioned in the first version code and a second hash value corresponding to the target code block when the target code block is positioned in the second version code based on the source code information;
Calculating the similarity between the first hash value and the second hash value;
code difference information of the target code block is determined based on the similarity.
6. A method according to any one of claims 1 to 3, wherein the determining status information of the target code block based on the location information of the target code block and the code difference information comprises:
acquiring a first code line number and a second code line number, wherein the first code line number is used for indicating the code position of a code line in the target code block in the first version code, and the second code line number is used for indicating the code position of the code line in the target code block in the second version code;
determining code location change information of the target code block based on the first code line number and the second code line number;
status information of the target code block is determined based on code location change information of the target code block.
7. A method of code processing, comprising:
acquiring a mapping relation sent by terminal equipment, wherein the mapping relation is used for indicating an association relation between state information of a target code block and a storage path of a target code file, the target code block is a code block in incremental file information in the target code file, the state information of the target code block is obtained based on position information of the target code block and code difference information of the target code block, the state information is used for indicating a state update condition of the target code block, the code difference information of the target code block is used for indicating a difference condition between a code position of the target code block when the target code block is positioned in a first version code and a code position of the target code when the target code block is positioned in a second version code, and the first version code and the second version code are code files of two adjacent different versions of the target code file;
And acquiring code data of the target code block of the target code file according to the mapping relation.
8. The method of claim 7, wherein the method further comprises:
and sending code data of the target code block of the target code file to the terminal equipment for displaying the code data of the target code block by the terminal equipment.
9. A terminal device, comprising:
the acquisition unit acquires incremental file information of the target code file;
a processing unit, configured to determine location information of an object code block in the delta file information and code difference information of the object code block, where the code difference information of the object code block is used to indicate a difference condition between a code location when the object code block is located in a first version code and a code location when the object code block is located in a second version code, and the first version code and the second version code are two adjacent code files of different versions of the object code file;
the processing unit is used for determining state information of the target code block based on the position information and the code difference information, wherein the state information is used for indicating the state update condition of the target code block;
The processing unit is used for generating a mapping relation between the state information of the target code block and the storage path of the target code file;
and the sending unit is used for sending the mapping relation to a server, wherein the mapping relation is used for the server to acquire the code data of the target code block of the target code file.
10. A code processing apparatus, characterized in that the code processing apparatus comprises: an input/output (I/O) interface, a processor, and a memory, the memory having program instructions stored therein;
the processor is configured to execute program instructions stored in a memory, to perform the method of any one of claims 1 to 6, or to perform the method of any one of claims 7 to 8.
11. A computer readable storage medium comprising instructions which, when run on a computer device, cause the computer device to perform the method of any one of claims 1 to 6 or to perform the method of any one of claims 7 to 8.
12. A computer program product comprising instructions which, when run on a computer device or processor, cause the computer device or processor to perform the method of any one of claims 1 to 6 or to perform the method of any one of claims 7 to 8.
CN202211020622.1A 2022-08-24 2022-08-24 Code processing method and related device Pending CN117008961A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211020622.1A CN117008961A (en) 2022-08-24 2022-08-24 Code processing method and related device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211020622.1A CN117008961A (en) 2022-08-24 2022-08-24 Code processing method and related device

Publications (1)

Publication Number Publication Date
CN117008961A true CN117008961A (en) 2023-11-07

Family

ID=88567871

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211020622.1A Pending CN117008961A (en) 2022-08-24 2022-08-24 Code processing method and related device

Country Status (1)

Country Link
CN (1) CN117008961A (en)

Similar Documents

Publication Publication Date Title
Malyshev et al. Getting the most out of Wikidata: semantic technology usage in Wikipedia’s knowledge graph
CN110866029B (en) sql statement construction method, device, server and readable storage medium
CN105550206B (en) The edition control method and device of structured query sentence
CN112199086A (en) Automatic programming control system, method, device, electronic device and storage medium
CN112363695B (en) PMML file and integration method of runtime environment and industrial software thereof
CN107391682B (en) Knowledge verification method, knowledge verification apparatus, and storage medium
US20180081940A1 (en) Remote query optimization in multi data sources
WO2021253641A1 (en) Shading language translation method
CN111125064B (en) Method and device for generating database schema definition statement
CN109063091A (en) Data migration method, data migration device and the storage medium of hybrid coding
CN116560683A (en) Software updating method, device, equipment and storage medium
CN113032642A (en) Data processing method, device and medium for target object and electronic equipment
CN108959294B (en) Method and device for accessing search engine
CN112970011A (en) Recording pedigrees in query optimization
US10003492B2 (en) Systems and methods for managing data related to network elements from multiple sources
CN110955712A (en) Development API processing method and device based on multiple data sources
CN116483707A (en) Test method, test device, test apparatus, test program, and test program
CN111638926A (en) Method for realizing artificial intelligence in Django framework
CN115455006A (en) Data processing method, data processing device, electronic device, and storage medium
CN117008961A (en) Code processing method and related device
CN111159203B (en) Data association analysis method, platform, electronic equipment and storage medium
CN114547083A (en) Data processing method and device and electronic equipment
CN114579136A (en) Code processing method and device, computer equipment and storage medium
CN110471708B (en) Method and device for acquiring configuration items based on reusable components
CN115687810A (en) Webpage searching method and device and related equipment

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination