CN107577476A - A kind of Android system source code difference analysis method, server and medium based on Module Division - Google Patents

A kind of Android system source code difference analysis method, server and medium based on Module Division Download PDF

Info

Publication number
CN107577476A
CN107577476A CN201710665735.XA CN201710665735A CN107577476A CN 107577476 A CN107577476 A CN 107577476A CN 201710665735 A CN201710665735 A CN 201710665735A CN 107577476 A CN107577476 A CN 107577476A
Authority
CN
China
Prior art keywords
module
information
android system
system source
file
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
CN201710665735.XA
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.)
Institute of Software of CAS
Original Assignee
Institute of Software of CAS
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 Institute of Software of CAS filed Critical Institute of Software of CAS
Priority to CN201710665735.XA priority Critical patent/CN107577476A/en
Publication of CN107577476A publication Critical patent/CN107577476A/en
Pending legal-status Critical Current

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

The invention discloses a kind of Android system source code difference analysis method, server and medium based on Module Division.This method is:1) for two sets of Android system source codes to be contrasted, the compiling information collection of each Android system source code is obtained;2) module information that each compiling information is concentrated is extracted respectively, obtains module information set corresponding to two sets of Android system source codes difference;3) the two modules target as a comparison that will have same type of the same name in the two module information set, carries out diff comparisons;4) the diff comparison results of step 3) are handled based on abstract syntax tree AST, obtains a fine-grained Android system source code version comparison result.The present invention has obtained a fine-grained Android source codes version comparison result, can effectively improve the analysis efficiency of Android researcher.

Description

A kind of Android system source code difference analysis method based on Module Division, server And medium
Technical field
The present invention relates to technical field of software engineering, android system analysis is related generally to, more particularly to one kind Android source code difference analysis method, server and medium based on Module Division.
Background technology
As one of most popular mobile terminal operating system at present, android system is quickly grown, version updating compared with It hurry up, each new version includes some new functions.For redaction, Google officials can provide a List and carry out briefly Introduce, but never a software is capable of the difference of the comparison new and old edition of system.For Android researcher, often Often need to analyze android system, Module Division, code migration etc., if the difference of two versions can be apparent from Not, then, the workload of researcher can be greatly reduced.
Diff is the most important instrument that general source code compares, but Diff can only contrast file of the same name, for Android sources For code, if two files are wanted to carry out Diff comparisons, it is necessary to which same path of the same name, otherwise Diff is just different as two using them File.And for Android source codes, according to the development of function, the same file in two versions is likely to appear in Under different catalogues, go simply to compare two Android source codes if only using Diff, then can obtain the result of inaccuracy.
Retrieval is found, Chinese Patent Application No. 201410252637.X, it is more to disclose a kind of source code based on static analysis Version function calling relationship otherness identification method, this method obtain the function defined in source code by source code Static Analysis Technology The information such as the static call relation between list and function;Then two version source codes of selection are subjected to Diff, with reference to static state The function that analysis obtains defines list and call relation identifies the difference section of change, and the part of change is carried out to careful shape State is analyzed, and is identified modification state, newly-increased state and deletion state that function defines and calls respectively and is put in storage, and the invention can be with Complete call relation difference analysis and the exhibition between the intrinsic call relationship analysis of single version and displaying and multiple versions Show, efficient householder method is provided for the analysis of open source software, exploitation, upgrading and maintenance.But this method can not solve code The problem of migration, i.e., when sound code file changes path, can not correctly it compare, and result of the comparison can not obtain compared with coarseness Know the concrete mode (change of such as parameter, the change of return value) that function, class change.
For these deficiency, the present invention devise an Android source code difference analysis method based on Module Division, Server and medium, both solved the problems, such as the code migration that Diff can not be analyzed, and made source code comparison result more fine granularity again.
The content of the invention
The technology of the present invention solves problem:Can not solve code migration for Diff and comparison result is compared with coarseness, there is provided one Android source code difference analysis method, server and medium of the kind based on Module Division, first by Android source codes according to volume Translate and be divided into different modules, be then based on module and carry out source code comparison, and result is carried out further from AST angle contrast Processing, has obtained a fine-grained Android source codes version comparison result, can effectively improve point of Android researcher Analyse efficiency.
The technical solution of the present invention:Android source code difference analysis method, server based on Module Division and Medium, it is characterised in that Android source codes are carried out difference analysis by this method in units of module from AST angle, including Following steps:
S1, design Mysql databases, for memory module information and the version comparison data ultimately generated;
S2, the download two sets of Android source codes to be contrasted, it is Android systems to print make databases by make-n-p Information collection is translated in unified editing.The beginning part is GNU Make version information, is then the output of Make orders, because use-n is selected , this part is sky.Then a line ' #Make data base, printed on $ DATE ' represent Make databases beginning, Be followed by the part of database, per a kind of data with a line annotation starts, ' #Variables ' include all global variables and Grand function definition;‘#Implicit Rules’:General rule, such as .c files are to the rule of .o files;‘#Files’:Including To the create-rule of each file, form is " target:Dependency1dependency2 ", given with annotation thereafter The definition of all local variables.The module information that each android system compiling information is concentrated is extracted respectively, is stored in Mysql numbers According in storehouse, including the title of module in ' #Variables ', the file letter that module compiling relies in attribute information and ' #Files ' Breath.
S3, based on the module information stored in S2, be two of same type of the same name by each pair corresponding module in two sets of source codes Module is contrast target, is compared with diff orders;The situation of many source code migrations in Android source codes be present, directly The limitation that diff orders compare is, when the path difference of two same files, can be identified as two different files.Therefore By the way of being compared based on collector, the file relied on during two corresponding module compilings is compared, this is solved and asks Topic.
S4, on the basis of diff comparison results, from AST (abstract syntax tree) angle analysis file particular content, such as Class, the increasing of function, the changing content deleting, change, and the form specifically changed is marked, such as the attribute change of class, value changes are returned, after Hold relationship change.
The step S1 design Mysql databases are implemented as:In Mysql databases, design database form, Including at least two sets of source code module information tables, module changes information table, and file changes information table, and function changes information table, and class changes Become information table, the change information of two sets of source codes of storage that can be from coarse to fine.Wherein, function and class change and should included in information table The field of specific version, such as the attribute change of class, return to value changes etc..Wherein, note first set source code module information table is Table1, second set of source code module information table are Table2;
The step S2 is by parsing being implemented as follows for make database acquisition module relevant informations:
S21, download will carry out the Android source codes of two versions of difference analysis;
S22, perform make-n-p respectively in two sets of source codes, the whole make database informations of printout are stored in Txt file;
The txt file stored in S23, parsing S22, extraction module information.Android constructing systems are generating each module Rule when insert with it is following rule name global variable:Android.$MODULE.$ATTR.Wherein $ MODULE are mould The name of block, $ ATTR are one of following BUILT, CHECKED, INSTALLED, PATH, REQUIRED, STUBS, TAGS.This hair Bright care has PATH, BUILT, INSTALLED.Row containing these keywords is parsed, and according to BUILT after Sew and designed Table1 in the type of INSTALLED routing information difference acquisition module and target platform renewal deposit S1 In Table2;
S24, the file set relied on when each module compiles is extracted in txt;As described in S2, the letter after extraction ' #Files ' Breath, the renewal deposit designed database tables of S1;
Corresponding module in two sets of source codes is carried out being implemented as follows for diff comparisons by the step S3:
S31, newly-built two files, android1, android2, for depositing the file relied on during each module compiling. When corresponding module compares, the file copy relied on when module is compiled respectively is into two file roots;
S32, read module information is circulated from the Table1 in Mysql databases described in S23, read a module letter After breath, the module all consistent with the module title, type, target platform is found in Table2;By the module obtained in S24 according to Bad file is individually copied under android1 the and android2 roots of S31 foundation;
S33, a pair of corresponding modules are often extracted from Mysql databases, perform an android1 and android2 two The diff of individual file is compared, and alignment parameters are-ruNa, as a result including all comparison files and its place routing information, file Increase, the specifying information of reduction and line number mark etc.;Comparison result is stored in txt file --- in con;
Traditional diff is to carry out the direct diff of file, due to code migration be present, it may appear that comparison result mistake, this Invention carries out diff operations based on module, can evade such a mistake.
The step S4 is implemented as follows from AST (abstract syntax tree) angle analysis file particular content:
The con files obtained in S41, processing S33, obtain the line number at file difference;
S42, new and old source code (two sets of Android system source codes i.e. to be contrasted) is analyzed by grammar parser ANTLR accordingly changed Become the syntactic node of line number, obtain the information of the function changed and class, include the name of function, the return value and ginseng of function Number;The modifier of class, the name of class and the inheritance of class, and obtain such parent, always recurrence to file.Form is:
ClassSpesifile@~@class modifier@~@className@~@class name@~@classRelation@~@ Inheritance #functionReturn@~@function return value@~@functionName@~@function names@~@ FunctionParameters@~@function parameters.
"~" is the separator of same one-level, and " # " is the separator of different stage, and middle fixation name is such as " classSpesifile ", it is the name that can first obtain different stage when contrast for positioning grammer type of name A name is formed, if the combined name of two contrast objects is the same, the syntactic node of bottom rank will be analyzed The place of difference, it may be possible to which the return value of function becomes, and possible function parameter becomes.
In the database table that S43, the result deposit S1 for obtaining S42 are designed.
The present invention also provides a kind of server, it is characterised in that the server includes memory and processor, described to deposit Reservoir stores computer program, and the computer program is configured as being included by the computing device, the computer program For performing the instruction of each step in above-mentioned Android source codes difference analysis method.
The present invention also provides a kind of computer-readable recording medium for storing computer program, it is characterised in that the meter Calculation machine program includes instruction, and the instruction is when by make it that it is above-mentioned that the server performs during the computing device of server Each step in Android source code difference analysis methods.
The present invention compared with prior art the advantages of be:
(1) present invention is then based on module and carries out source by the way that Android source codes are divided into different modules according to compiling Code division compares, and solves the problems, such as the insurmountable code migrations of Diff;
(2) code difference analysis result is further processed from AST angle, has obtained a more fine granularity Android source code version comparison results, can help Android developer more clearly understand Android versions change feelings Condition.
Brief description of the drawings
Fig. 1 is the overview flow chart of the present invention;
Fig. 2 extracts flow chart for module information in the present invention;
Fig. 3 is the AST algorithm flow charts of the present invention;
Fig. 4 is the algorithm flow schematic diagram of comparative analysis difference.
Embodiment
The present invention is described in further detail with reference to the accompanying drawings and detailed description.
The present invention is a kind of Android source code difference analysis methods based on Module Division, and such as Fig. 1, it includes following Step:
S1, design database, for storing the version comparison data ultimately generated;
In Mysql databases, design database form, including at least two sets of source code module information tables, module changes letter Table is ceased, file changes information table, and function changes information table, and class changes information table, two sets of source codes of storage that can be from coarse to fine Change information.Wherein, function and class change the field that specific version should be included in information table, such as the attribute change of class, return Return value changes etc..
S2, the download two sets of Android source codes to be contrasted, make databases are printed by make-n-p, extract database In all modules information, be stored in database in, specific steps are as shown in Figure 2;
S21, download will carry out the Android source codes of two versions of difference analysis;
S22, perform make-n-p respectively in two sets of source codes, the information of printout is stored in txt file;
Android constructing system is based on Make, while has used some GNU Make extension.It is each in Android Engineering has several Android.mk, each several file destinations of Android.mk definables, mesh (for git sources) The type of mark file mainly have the related STATIC LIBRARY (static library) of C/C++, EXECUTABLE (executable file), SHARED LIBRARY (shared library), Java related STATIC JAVA LIBRARY (Java static state class libraries), JAVA LIBRARY (java class storehouse), PACKAGE (apk bags).
GNU Make programs, which provide command line parameter-p, to be allowed to print Make databases.When really obtaining database, - n command-line options are used herein, and specify a target being not present.So Make can't veritably perform structure target, Also it will not be put into too many extraneous data in file is dumped simultaneously.Make-n-p output is two parts, before for perform The output of Make orders, behind be Make databases memory dump.
In make databases, the beginning part is GNU Make version information, is then the output of Make orders, due to making With-n options, this part is sky.Then ' #Make data base, printed on $ DATE ' represent Make databases to a line Start, be followed by the part of database, started per a kind of data with a line annotation, ' #Variables ' includes all global variables And grand function definition;‘#Implicit Rules’:General rule, such as .c files are to the rule of .o files;‘#Files’: Including the create-rule to each file, form is " target:Dependency1dependency2 ", given with annotation thereafter The definition of all local variables is gone out.
The txt file stored in S23, parsing S22, extraction module information.Android constructing systems each wrap in generation Inserted when regular with the global variable of following rule name:Android.$MODULE.$ATTR.Wherein $ MODULE are bag Name, $ ATTR are one of following BUILT, CHECKED, INSTALLED, PATH, REQUIRED, STUBS, TAGS.We are concerned about Have PATH, TAGS, BUILT, INSTALLED.Row containing these keywords is parsed into the deposit designed numbers of S1 According in the table of storehouse;
S24, the file set relied on when each module compiles is extracted in txt;As described in S2, the letter after extraction ' #Files ' Breath, the renewal deposit designed database tables of S1;
In S3, two sets of source codes, using each corresponding module as contrast target, diff comparisons are carried out;Exist in Android source codes The situation of many source codes migrations, direct diff limitation be, when the path difference of two same files, can be identified as two Different files.Therefore by the way of being compared based on collector, the text relied on during two corresponding module compilings is compared Part, solves this problem.
S31, newly-built two files, android1, android2, for depositing the file relied on during each module compiling. When corresponding module compares, the file copy relied on when module is compiled respectively thus removes into two file roots The path of each dependent file, avoid because two sets of source code paths are different and caused by than it is inaccurate the problem of;
S32, note first set source code module information storage table are Table1, and second set of source code module information storage table is Table2;Read module information is circulated from Table1, after reading a module information, is found in Table2 and the module The all consistent module of title, type, target platform;The file that the module obtained in S24 relies on is individually copied to S31 foundation Under android1 and android2 roots;When can not find corresponding module in Table2, it is first set source to illustrate the module Code is exclusive, and all files are all considered as newly-increased file.
S33, a pair of corresponding modules are often extracted, perform a diff-ruNa android1android2>Con, storage Module different information;
S4, on the basis of diff comparison results, from AST (abstract syntax tree) angle analysis file particular content, such as Class, the increasing of function, the changing content deleting, change, and the form specifically changed is marked, such as the attribute change of class, value changes are returned, after Hold relationship change;
ANTLR be one increase income syntax analyzer it be to include Java, the language including C++, C# provides one and passed through Syntactic description constructs the identifier of self-defined language (recognizer), compiler (parser) and interpreter automatically (translator) framework.Pass through lexical analyzer (Lexer), syntax analyzer (Parser), tree analyzer (tree Parser), the text of input is compiled, and is converted into abstract syntax tree (AST), two are distinguished from the rank of syntax tree The difference of file.
The con files obtained in S41, processing S33, obtain the line number at file difference;
S42, by grammar parser ANTLR by new and old two sets of source codes (two sets of Android system source codes i.e. to be contrasted) change For abstract syntax tree (AST), and corresponding line number corresponding syntactic node in two abstract syntax tree AST is analyzed respectively, obtain and become The name of the function of change, return value and parameter, the modifier of class, name, inheritance, and such parent is obtained, a Direct Mail It is grouped into file.
AST parsers have two key points, first key point be how the acquisition at the particular row of source code successively The syntactic element of class, function, second key point are how completely to obtain class, the syntactic element of function of every one-level.It is calculated Method schematic flow sheet such as Fig. 3.Abstract syntax tree AST syntactic node is analyzed, if the syntactic node is stated for class body, is extracted The child node and its syntactic element of the syntactic node, include the modifier of class/interface, function name, the return value of function and parameter, The inheritance of class name and class;If the syntactic node is type declarations, the child node and its grammer of the syntactic node are extracted Element, include the inheritance of the modifier of class/interface, class name and class.So as to completely obtain the class of every one-level, the language of function Method element.For first key point, corresponding strategy is the father node of analysis node successively, and present node is key node When, just carry out the further acquisition of node elements, key node here refer to " statement of class body " in flow chart (Fig. 3), " type declarations ", the statement of class body refers to the feature for only describing class, without describing the content inside class;Type declarations describe a type Statement as class statement, the statement of interface.For second key point, corresponding strategy is similar with first, and is directed to Corresponding key node is analyzed, because key node type class is not sure, it is necessary to generate AST figure by ANTLR Analysis experiment is carried out, constantly adds, improve the processing of key node in an experiment, to completely obtain the class of every one-level, letter Several syntactic elements.
Judge it is class, the grammer member of function in addition come what is judged both for the grammer name of key node in flow chart The name of element, all it is the child node value of corresponding key node.The form of the syntactic element finally stored is as follows:
ClassSpesifile@~@class modifier@~@className@~@class name@~@classRelation@~@ Inheritance #functionReturn@~@function return value@~@functionName@~@function names@~@ FunctionParameters@~@function parameters.
"~" is the separator of same one-level, and " # " is the separator of different stage, and middle fixation name is such as " classSpesifile ", it is the name that can first obtain different stage when contrast for positioning grammer type of name A name is formed, if the combined name of two contrast objects is the same, the syntactic node of bottom rank will be analyzed The place of difference, it may be possible to which the return value of function becomes, and possible function parameter becomes.
Obtain class, function syntactic element after, algorithm flow schematic diagram such as Fig. 4 of comparative analysis difference:Will be new and old The names at different levels combination of syntactic element (syntactic element in the abstract syntax tree AST of two sets of Android system source codes i.e. to be contrasted) Into a character string, if character string is the same, that explanation belongs to same rank, can be contrasted;During contrast, first by function, The constant mark of class is contrasted, if mark is the same, further comparative grammar element, a last grammer member is arrived until comparing Element;It is if different, that is, the value of this mark becomes, and takes NeXt ID to be contrasted.
This algorithm has two key points, and first key point is how to determine that they are same levels, only at the same level Syntactic element just has the necessity compared, and second key point is how that comparative analysis goes out different syntactic elements.
For first key point, by combining class corresponding to each rank, function name into a character string, if word Symbol string is the same, that is, same rank.
For second key point, compared by class, the function identification character string appointed in advance with standard, mark therein Know such as " functionParameters ", " className ", if the same mark, with regard to comparative grammar element, if differed Sample, that is, the value of this mark becomes.Such as " functionParameters is changed ".
In the database table that S43, the result deposit S1 for obtaining S42 are designed.
Non-elaborated part of the present invention belongs to the known technology of those skilled in the art.
It is described above, it is only the embodiment in the present invention, but protection scope of the present invention is not limited thereto, and is appointed What be familiar with the people of the technology disclosed herein technical scope in, it will be appreciated that the conversion or replacement expected, should all cover Within the scope of the present invention, therefore, protection scope of the present invention should be defined by the protection domain of claims.

Claims (10)

1. a kind of Android system source code difference analysis method based on Module Division, its step are:
1) for two sets of Android system source codes to be contrasted, the compiling information collection of each Android system source code is obtained;
2) module information that each compiling information is concentrated is extracted respectively, obtains mould corresponding to two sets of Android system source codes difference Block message set;
3) the two modules target as a comparison that will have same type of the same name in the two module information set, carries out diff ratios It is right;
4) the diff comparison results of step 3) are handled based on abstract syntax tree AST, obtains a fine-grained Android system Source code version comparison result.
2. the method as described in claim 1, it is characterised in that knot is compared to the diff of step 3) based on abstract syntax tree AST The method that fruit is handled is:Two sets of Android system source codes to be contrasted will be converted to by grammar parser ANTLR first Abstract syntax tree AST;Then the line number at file difference is obtained from diff comparison results;Then grammar parser is passed through ANTLR analyzes corresponding line number corresponding syntactic node in two abstract syntax tree AST respectively, obtains the information of the function changed With the information of class changed, and such parent is obtained, always recurrence to file.
3. method as claimed in claim 1 or 2, it is characterised in that the module information includes the title of module, the category of module Property information and module compiling rely on fileinfo.
4. method as claimed in claim 3, it is characterised in that PATH, BUILT of the attribute information including module, INSTALLED;The type and target platform letter of acquisition module are distinguished according to BUILT suffix and INSTALLED routing information Breath.
5. the method as described in claim 1, it is characterised in that a Mysql databases are created, for storing the module information And the Android system source code version comparison result;Wherein, the Mysql databases comprise at least two module information tables, respectively Module information corresponding to two sets of Android system source codes is stored, and two sets of Android system source codes of storage change the module change of information Information table, file change information table, function changes information table and class changes information table.
6. method as claimed in claim 5, it is characterised in that the function changes information table, the class changes in information table Include the field of specific version.
7. the method as described in claim 1, it is characterised in that in the step 3), the method for carrying out diff comparisons is:
31) newly-built two files android1, android2, it is respectively used to deposit the text relied on when the two modules compiling contrasted Part;
32) read module information is circulated from a module information set, after reading a module information, another described The module all consistent with the module title, type, target platform is found in module information set;Then using the two modules as Contrast module is treated, and the file relied on is individually copied in corresponding android1 and android2;
33) contrast module is treated for each of acquisition, a diff is performed to two files of android1 and android2 Compare.
8. method as claimed in claim 7, it is characterised in that the result that the diff is compared includes comparing file and its place Routing information, file increase information, file reduce information and line number mark.
9. a kind of server, it is characterised in that the server includes memory and processor, the memory storage computer Program, the computer program are configured as by the computing device, and the computer program includes will for perform claim Ask the instruction of each step in any methods described in 1 to 8.
10. a kind of computer-readable recording medium for storing computer program, it is characterised in that the computer program includes referring to Order, the instruction is when by causing any side in the server perform claim requirement 1 to 8 during the computing device of server Each step in method.
CN201710665735.XA 2017-08-07 2017-08-07 A kind of Android system source code difference analysis method, server and medium based on Module Division Pending CN107577476A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710665735.XA CN107577476A (en) 2017-08-07 2017-08-07 A kind of Android system source code difference analysis method, server and medium based on Module Division

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710665735.XA CN107577476A (en) 2017-08-07 2017-08-07 A kind of Android system source code difference analysis method, server and medium based on Module Division

Publications (1)

Publication Number Publication Date
CN107577476A true CN107577476A (en) 2018-01-12

Family

ID=61034193

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710665735.XA Pending CN107577476A (en) 2017-08-07 2017-08-07 A kind of Android system source code difference analysis method, server and medium based on Module Division

Country Status (1)

Country Link
CN (1) CN107577476A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111506342A (en) * 2020-04-23 2020-08-07 北京奇艺世纪科技有限公司 Version difference detection method and device, electronic equipment and storage medium
CN113448617A (en) * 2021-08-31 2021-09-28 太平金融科技服务(上海)有限公司深圳分公司 Data object management method and device, computer equipment and storage medium

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101286119A (en) * 2008-05-27 2008-10-15 华耀环宇科技(北京)有限公司 Method for determining function point changing through code analysis
US20130074035A1 (en) * 2011-09-20 2013-03-21 Nec Corporation Source code comparison device, source code comparison method and source code comparison program
CN103699389A (en) * 2013-12-30 2014-04-02 北京大学 Linux kernel module relation extracting method based on compiling options
CN106951228A (en) * 2017-02-21 2017-07-14 腾讯科技(深圳)有限公司 The treating method and apparatus of difference in version iteration

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101286119A (en) * 2008-05-27 2008-10-15 华耀环宇科技(北京)有限公司 Method for determining function point changing through code analysis
US20130074035A1 (en) * 2011-09-20 2013-03-21 Nec Corporation Source code comparison device, source code comparison method and source code comparison program
CN103699389A (en) * 2013-12-30 2014-04-02 北京大学 Linux kernel module relation extracting method based on compiling options
CN106951228A (en) * 2017-02-21 2017-07-14 腾讯科技(深圳)有限公司 The treating method and apparatus of difference in version iteration

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111506342A (en) * 2020-04-23 2020-08-07 北京奇艺世纪科技有限公司 Version difference detection method and device, electronic equipment and storage medium
CN113448617A (en) * 2021-08-31 2021-09-28 太平金融科技服务(上海)有限公司深圳分公司 Data object management method and device, computer equipment and storage medium
CN113448617B (en) * 2021-08-31 2022-01-25 太平金融科技服务(上海)有限公司深圳分公司 Data object management method and device, computer equipment and storage medium

Similar Documents

Publication Publication Date Title
US10698682B1 (en) Computerized software development environment with a software database containing atomic expressions
CN110998516B (en) Automated dependency analyzer for heterogeneous programming data processing systems
US7032210B2 (en) Method and system for generating program source code of a computer application from an information model
CN112394942B (en) Distributed software development compiling method and software development platform based on cloud computing
Kirby Reflection and hyper-programming in persistent programming systems
CN108762743B (en) Data table operation code generation method and device
US8122440B1 (en) Method and apparatus for enumerating external program code dependencies
US20080276221A1 (en) Method and apparatus for relations planning and validation
CN109344230A (en) Code library file generation, code search, connection, optimization and transplantation method
US11294665B1 (en) Computerized software version control with a software database and a human database
CN114594933A (en) Front-end code generation method and device based on file scanning and storage medium
CN112860265A (en) Method and device for detecting operation abnormity of source code database
CN109325217B (en) File conversion method, system, device and computer readable storage medium
CN107577476A (en) A kind of Android system source code difference analysis method, server and medium based on Module Division
Rahman et al. A DSL for importing models in a requirements management system
US11977473B2 (en) Providing a pseudo language for manipulating complex variables of an orchestration flow
Nguyen et al. Output-oriented refactoring in php-based dynamic web applications
KR102614967B1 (en) Automation system and method for extracting intermediate representation based semantics of javascript
CN114816364A (en) Method, device and application for dynamically generating template file based on Swagger
EP2535813A1 (en) Method and device for generating an alert during an analysis of performance of a computer application
CN110928535A (en) Derivative variable deployment method, device, equipment and readable storage medium
Fraternali et al. Almost rerere: An approach for automating conflict resolution from similar resolved conflicts
Riddle et al. Tools for software system construction
Irwin Understanding and improving object-oriented software through static software analysis
JP2009134662A (en) Performance test data construction tool

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
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20180112

WD01 Invention patent application deemed withdrawn after publication