CN110968318A - Method for realizing JavaScript library of MVVM design mode - Google Patents
Method for realizing JavaScript library of MVVM design mode Download PDFInfo
- Publication number
- CN110968318A CN110968318A CN201911326965.9A CN201911326965A CN110968318A CN 110968318 A CN110968318 A CN 110968318A CN 201911326965 A CN201911326965 A CN 201911326965A CN 110968318 A CN110968318 A CN 110968318A
- Authority
- CN
- China
- Prior art keywords
- subscriber
- function
- instruction
- attributes
- data
- 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.)
- Withdrawn
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/38—Creation or generation of source code for implementing user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/31—Programming languages or programming paradigms
- G06F8/315—Object-oriented languages
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Computing Systems (AREA)
- Devices For Executing Special Programs (AREA)
Abstract
The invention provides a method for realizing a JavaScript library of an MVVM (multifunction virtual machine) design mode, which comprises the following steps of: s1: setting a listener Observer for all attributes of the data; s2: designing a subscriber Watcher, receiving the attribute change notification and executing a corresponding function, thereby updating the view; s3: associating the Observer and the Watcher to realize simple bidirectional binding data; s4: the subscriber Watcher receives the change of the corresponding attribute, and executes the corresponding update function, thereby updating the view.
Description
Technical Field
The invention relates to a development method of a WEB front end, in particular to a realization method of a lightweight WEB front end MVVM design mode JavaScript library.
Background
The Web front-end development is an important component in the Web technology development, and the development form of the traditional front-end development is simplified due to the influence of external factors, namely, the information in the interface is displayed by taking a page as a main body. However, as the scientific technology is continuously improved, the Web front-end development becomes more complex in form, but the functional aspect of the Web front-end development gradually realizes the interaction with the user. Front-end efficiency can be affected due to the large number of DOM operations. The following is an introduction of the popular MVVM framework.
1.Riot 3.0:
A component-based development model (called Tag in Riot) is provided that provides a small and elegant API. Riot and Vue may have many similarities in design philosophy. Although important compared to Riot, Vue, Vue has a number of significant advantages: better performance. Riot uses a traversal DOM tree rather than a virtual DOM, but in fact uses a dirty check mechanism, and therefore suffers from the same performance problems as AngularJS. Support for more sophisticated tools, Vue provides official support for webpack and browse, while Riot relies on communities to build integrated systems.
2.Polymer:
Polymer is another Google sponsored project, and is in fact an inspirational source of Vue. Vue can be roughly analogous to the custom elements of Polymer, and both have similar development styles. The biggest difference is that Polymer is based on the latest version of the Web Components standard and requires heavy-weight polyfils to help work (performance degradation), which the browser itself does not support. In contrast, Vue does not need to rely on polyfils to work if it is supported to IE 9. In the Polymer version, teams have very limited use of the data binding system in order to offset performance. For example, the only expressions supported in Polymer are boolean negation and single method invocation, and its implementation of the computed method is not very flexible.
3.Knockout:
Knockout is a pioneer in the MVVM field and tracks dependencies. Its response system is also similar to Vue. Its presentation in browser support and other aspects is also impressive. It can be supported to IE6 at its lowest, whereas Vue can only be supported to IE9 at its lowest. The evolution of Knockout has slowed over time and is somewhat older. For example, its component systems lack a complete lifecycle event methodology, although these are now very common. And its method of interfacing to a sub-component is somewhat cumbersome compared to Vue. You also find the two to be different in the interface design philosophy if you are interested in the study. This can be embodied by a respectively created simple Todo List. Perhaps somewhat subjective, but many believe that the Vue API interface is simpler and more elegant.
It can be seen that many popular MVVM frameworks have advantages and disadvantages, and cannot be customized, and if the project development is iterated for a long time, it is difficult to migrate or directly introduce into the current project. At this time, some framework algorithms are needed to optimize DOM operation, and the invention provides a realization scheme of a lightweight JavaScript library of a WEB front-end MVVM design mode.
Disclosure of Invention
The invention provides a method for realizing a JavaScript library of an MVVM design mode, which solves the problem of realizing a lightweight and customizable WEB front-end MVVM design mode which accords with a current project, and adopts the following technical scheme:
a method for realizing a JavaScript library of an MVVM design mode comprises the following steps:
s1: setting a listener Observer for all attributes of the data;
s2: designing a subscriber Watcher, receiving the attribute change notification and executing a corresponding function, thereby updating the view;
s3: associating the Observer and the Watcher to realize simple bidirectional binding data;
s4: the subscriber Watcher receives the change of the corresponding attribute, and executes the corresponding update function, thereby updating the view.
Further, in step S1, the listener Observer explorer uses object.
Further, in step S2, the implementation of the subscriber watch includes the following steps:
1) creating a message subscriber Dep for accommodating subscribers, taking charge of collecting the subscribers and then executing an updating function of the corresponding subscriber when the attribute changes;
2) the listener Observer executes the operation of adding the subscriber Water in the get function, and triggers the corresponding get function to execute the operation of adding the subscriber when the subscriber Water initializes;
in step 2), the subscriber needs to be added when the subscriber watch initializes, and the subscriber performs the following operations: target up cache down subscribers, add successfully and then remove them.
Further, in step S3, the bidirectional bound data is parsed and bound by the parser compiler to complete three processes of parsing, initializing, and compiling the instruction, including the following steps:
1) analyzing an HTML template instruction, replacing template data and initializing a view;
2) binding a node corresponding to the template instruction with a corresponding update function, and initializing a corresponding subscriber;
3) traversing each node, and processing the nodes containing relevant appointments;
4) after the outermost layer of nodes are obtained, a composelement function is called, all child nodes are judged, if the nodes are text nodes and the nodes matched with instructions in the form of { } } are compiled, view data is required to be initialized firstly in the compiling process, corresponding to the step 1), and then a subscriber bound with an updating function is required to be generated, corresponding to the step 2).
In the step 2), the analysis template firstly acquires the dom element, then processes the node containing the instruction on the dom element, and stores the dom node to be analyzed into a fragment segment for processing by firstly establishing the fragment segment.
In step 3), the processing refers to processing of an instruction in the form of '{ { variable } }'.
In the step 4), the analysis and compilation of more instructions are carried out on the composelement function and other instruction nodes, then all attributes of the instructions are traversed to see whether the attributes of the matched instructions exist, and if so, the instructions are analyzed and compiled.
Furthermore, by adding a v-model instruction and analysis and compilation of an event instruction, analyzing the nodes by using a function, wherein the function is mounted on a compiler prototype, firstly traversing all node attributes, then judging whether the attributes are instruction attributes, if so, distinguishing which instruction, and then carrying out corresponding processing.
Further, when initializing the SelfVue class, firstly, SelfVue scans and analyzes the relevant instruction of each HTML node through a compiler parser, initializes the template data and initializes the corresponding listener and subscriber; the listener Observer hijacks and monitors all attributes, if the attributes change, the listener Observer is notified, and the subscriber can receive the change notification of the attributes and execute corresponding functions, so that the view is updated to realize the bidirectional binding of data.
SelfVue is characterized by a data-driven view. DOM operation is reduced, and the execution efficiency of the code is improved. The project structure is optimized, and team development is easy.
The method for realizing the JavaScript library of the MVVM design mode has the following advantages: SelfVue has the advantages of utilizing data to drive views, utilizing algorithms to reduce DOM operations and improving the execution efficiency of codes. The project structure is optimized, and team development is easy. SelfVue can focus on interaction of data and views in the development process, and the development process is simplified.
Drawings
FIG. 1 is a schematic diagram of two aspects of implementing mvvm;
FIG. 2 is a schematic diagram of a trigger function when data changes;
FIG. 3 is a logic diagram of the present invention.
Detailed Description
As shown in fig. 1, implementing mvvm mainly involves two aspects: 1) updating a view, namely view, by data change; 2) view change update data, i.e., data.
The key point is how data updates view, because view update data can be realized by event listening, for example, an input tag listens to an 'input' event. Therefore, the invention focuses on analyzing how to update the view when the data changes.
The emphasis of the data update view is how to know that the data has changed, and as long as it is known that the data has changed, the following is well handled. How to know the data change, actually the text invention already provides an answer, as shown in fig. 2, a set function is set for the attribute through object.
As shown in fig. 3, the implementation process of the present invention:
as the realization of the bidirectional binding of the data is known, the invention firstly carries out hijack monitoring on the data, so the invention needs to arrange a monitor Observer for monitoring all the attributes. If the attribute changes, the subscriber is told to watch the Watcher to see if an update is required. Since there are many subscribers, the present invention requires a message subscriber Dep to collect these subscribers exclusively and then manage them uniformly between the listener Observer and subscriber watch. Then, the present invention needs to have an instruction parser compiler to scan and parse each HTML node element, initialize the relevant instruction to a subscriber watch correspondingly, and replace the HTML template data or bind the corresponding function (such as modelUpdater, updateText, etc.), at this time, when the subscriber watch receives the change of the corresponding attribute, the corresponding update function is executed, so as to update the view. Therefore, the invention executes the following 3 steps to realize the bidirectional binding of data:
1. implementing a listener Observer, used to hijack and monitor all attributes, and if there is a change, notifying the subscriber:
the Observer is a data listener, and the core method of implementation is the object. If all properties are to be listened to, all property values can be traversed through a recursive approach and processed for object. An Observer is implemented as follows.
Dep.target=null;
In the idea analysis, a message subscriber Dep capable of accommodating the subscriber needs to be created, and the subscriber Dep is mainly responsible for collecting the subscriber and then executing an update function of the corresponding subscriber when the attribute changes. It is obvious that the subscriber needs to have a container, which is list, to place the above Observer into the message subscriber.
2. A subscriber watch is implemented that can receive notification of the change of the attribute and execute the corresponding function to update the view.
Subscriber watch needs to add itself into the subscriber Dep at initialization, how should it be added? The listener Observer executes the operation of adding the subscriber Water when the get function of the listener Observer is known, so the invention only needs to trigger the corresponding get function to execute the operation of adding the subscriber when the subscriber Watcher is initialized, how to trigger the get function can be triggered as long as the corresponding attribute value is obtained, and the core reason is that the invention uses object. There is a detail point to be processed, the invention only needs to add the subscriber when the subscriber watch initializes, so a judgment operation needs to be done, so the following processing can be done on the subscriber: target up-buffer the down-subscriber, add successfully and then remove it. The subscriber watch is implemented as follows:
so far, after the simple version of the Watcher design is finished, the invention can realize a simple bidirectional binding data only by associating the Observer and the Watcher. Since the parser compiler has not been designed yet, the present invention performs the write-down process on the template data, assuming that there is still another node on the template and the id number is 'name', and the variable of the binding of the bidirectional binding is also 'name', and is enclosed by two big double brackets (here, just for demonstration, it is not used for the moment), the template is as follows:
<body>
<h1 id="name">{{name}}</h1>
</body>
at this time, the invention needs to associate Observer and watch:
then, the following SelfVue classes are newly on the page, so that the bidirectional binding of data can be realized:
at this time, the page is opened, and it can be seen that the page is just displayed as a hello world 'and becomes a canfoo' after 2 s. To this end, the total computation power is halved, but there is a detailed problem, and the invention is in the form of 'self v ue, data, name, canfoo' at the time of assignment, and the invention is in the ideal form of 'self v ue, name, canfoo' in order to realize such a form, the invention needs to do an agent process at the time of new self v ue, and let the agent accessing the attribute of self v ue access the attribute of self v ue, and the realization principle is to use object.
The present invention can directly change the template data in the form of' self v ue.
3. To realize the compiler:
although the above example of bidirectional data binding has been implemented, the whole process does not resolve the dom node, but directly fixes a node for replacing data, so a parser compiler needs to be implemented to do the resolving and binding work next. The parser compiler realizes the steps:
1) the template is resolved (e.g.: { { title } }, { { name } }) instructions (such as: v-on, v-model), and replace template data (e.g.: < h2> corresponding data </h2>), initializing the view;
2) the template (e.g.: { { title } }, { { name } }) instructions (such as: v-on, v-model) corresponding node (e.g.: < h2> corresponding data </h2>) to bind corresponding updating functions, initialize corresponding subscribers;
in order to analyze the template, the dom element needs to be acquired first, and then the node containing the instruction on the dom element is processed, so that the node needs to operate the dom more frequently, a fragment segment can be established first, and the dom node needing to be analyzed is stored in the fragment segment for processing:
3) next, each node needs to be traversed, and special processing is performed on the node containing the relevant designation, here, the simplest case is firstly processed, only the instruction with the form of '{ { variable } }' is processed, the simplification is difficult firstly, and then more instruction cases are considered:
4) after the outermost layer of nodes are obtained, a composelement function is called, all the child nodes are judged, if the nodes are text nodes and the nodes matched with instructions in the form of { } } are compiled, view data needs to be initialized firstly in the compiling process, which corresponds to the step 1), and then a subscriber which binds the updating function needs to be generated, which corresponds to the step 2). Thus, three processes of parsing, initializing and compiling the instruction are completed, and one parser compiler can work normally. In order to associate the parser compiler with the listener Observer and subscriber watchers, the invention needs to modify the following SelfVue function:
after the change, the invention does not need to carry out bidirectional binding by transmitting fixed element values before, and can name various variables at will to carry out bidirectional binding:
to this end, a data bidirectional binding function has been substantially completed, followed by the need to perfect parsing and compiling of more instructions, where to perform more instruction processing? The answer is obvious, as long as the above-mentioned composelementfunction is added to judge other instruction nodes, and then all the attributes are traversed to see whether there are attributes of the matched instruction, if any, the matched instruction is parsed and compiled. The invention adds a v-model instruction and an event instruction to the compileModel for analysis and compilation, and for the nodes, the invention uses the function compile to perform analysis processing:
the above compact function is mounted on a compact prototype, and it first traverses all node attributes, then determines whether the attribute is an instruction attribute, if so, distinguishes which instruction is, and then performs corresponding processing.
Finally, the invention processes the SelfVue class to make it more like vue usage:
at this time, the invention can really test that the following things are arranged on the page:
according to the results, the invention realizes a lightweight JavaScript library of the WEB front-end MVVM design mode. The method for realizing the JavaScript library of the MVVM design mode has the following advantages: SelfVue has the advantages of utilizing data to drive views, utilizing algorithms to reduce DOM operations and improving the execution efficiency of codes. The project structure is optimized, and team development is easy. SelfVue can focus on interaction of data and views in the development process, and the development process is simplified.
Claims (10)
1. A method for realizing a JavaScript library of an MVVM design mode comprises the following steps:
s1: setting a listener Observer for all attributes of the data;
s2: designing a subscriber Watcher, receiving the attribute change notification and executing a corresponding function, thereby updating the view;
s3: associating the Observer and the Watcher to realize simple bidirectional binding data;
s4: the subscriber Watcher receives the change of the corresponding attribute, and executes the corresponding update function, thereby updating the view.
2. The method for implementing the JavaScript library of MVVM design mode of claim 1, wherein: in step S1, the listener Observer employs object.
3. The method for implementing the JavaScript library of MVVM design mode of claim 1, wherein: in step S2, the implementation of the subscriber watch includes the following steps:
1) creating a message subscriber Dep for accommodating subscribers, taking charge of collecting the subscribers and then executing an updating function of the corresponding subscriber when the attribute changes;
2) the listener Observer executes the operation of adding the subscriber Water in the get function, and triggers the corresponding get function to execute the operation of adding the subscriber when the subscriber Water initializes.
4. The method of claim 3, wherein the method comprises: in step 2), the subscriber needs to be added when the subscriber watch is initialized, and the subscriber performs the following operations: target up cache down subscribers, add successfully and then remove them.
5. The method for implementing the JavaScript library of MVVM design mode of claim 1, wherein: in step S3, the bidirectional bound data is parsed and bound by the parser compiler, and three processes of parsing, initializing, and compiling of the instruction are completed, including the following steps:
1) analyzing an HTML template instruction, replacing template data and initializing a view;
2) binding a node corresponding to the template instruction with a corresponding update function, and initializing a corresponding subscriber;
3) traversing each node, and processing the nodes containing relevant appointments;
4) after the outermost layer of nodes are obtained, a composelement function is called, all child nodes are judged, if the nodes are text nodes and the nodes matched with instructions in the form of { } } are compiled, view data is required to be initialized firstly in the compiling process, corresponding to the step 1), and then a subscriber bound with an updating function is required to be generated, corresponding to the step 2).
6. The method of claim 5, wherein the method comprises: in the step 2), the analysis template firstly acquires the dom element, then processes the node containing the instruction on the dom element, and stores the dom node to be analyzed into a fragment segment for processing by firstly establishing the fragment segment.
7. The method of claim 5, wherein the method comprises: in step 3), processing refers to processing instructions with the form '{ { variable } }'.
8. The method of claim 5, wherein the method comprises: in step 4), analyzing and compiling more instructions are carried out on the composelement function and other instruction nodes, then all attributes of the instructions are traversed, whether the attributes of the matched instructions exist or not is judged, and if the attributes of the matched instructions exist, the instructions are analyzed and compiled.
9. The method of claim 5, wherein the method comprises: analyzing and compiling a v-model instruction and an event instruction by adding a function, wherein the function is used for analyzing and processing nodes, the function is mounted on a compiler prototype, all node attributes are firstly traversed, then whether the attributes are instruction attributes or not is judged, if so, which instruction is distinguished, and then corresponding processing is carried out.
10. The method for realizing the JavaScript library of the MVVM design mode according to claim 5, which is characterized in that: when initializing the SelfVue class, firstly, the SelfVue scans and analyzes the relevant instruction of each HTML node through a compiler parser, initializes the template data and initializes the corresponding listener and subscriber; the listener Observer hijacks and monitors all attributes, if the attributes change, the listener Observer is notified, and the subscriber can receive the change notification of the attributes and execute corresponding functions, so that the view is updated to realize the bidirectional binding of data.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911326965.9A CN110968318A (en) | 2019-12-20 | 2019-12-20 | Method for realizing JavaScript library of MVVM design mode |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911326965.9A CN110968318A (en) | 2019-12-20 | 2019-12-20 | Method for realizing JavaScript library of MVVM design mode |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110968318A true CN110968318A (en) | 2020-04-07 |
Family
ID=70035600
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911326965.9A Withdrawn CN110968318A (en) | 2019-12-20 | 2019-12-20 | Method for realizing JavaScript library of MVVM design mode |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110968318A (en) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111580830A (en) * | 2020-05-12 | 2020-08-25 | 北京飞漫软件技术有限公司 | Binding and analyzing method for hypertext markup language document element |
CN111796577A (en) * | 2020-06-29 | 2020-10-20 | 中国第一汽车股份有限公司 | Data instruction processing method and device, vehicle and storage medium |
CN112100187A (en) * | 2020-08-31 | 2020-12-18 | 湖北美和易思教育科技有限公司 | Student learning data storage method and device based on VueJS |
CN112527294A (en) * | 2020-12-18 | 2021-03-19 | 吉林亿联银行股份有限公司 | Vue bidirectional binding method and related device |
CN112579237A (en) * | 2020-12-17 | 2021-03-30 | 百果园技术(新加坡)有限公司 | Event response method, device, equipment and medium based on MVVM mode |
CN113204442A (en) * | 2021-05-31 | 2021-08-03 | 成都安恒信息技术有限公司 | Javascript library for operating IndexDB based on MVVM mode |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106446292A (en) * | 2016-11-16 | 2017-02-22 | 北京集奥聚合科技有限公司 | Front-end data two-way binding achieving method and device |
CN106484412A (en) * | 2016-09-30 | 2017-03-08 | 浙江大学 | A kind of two-way binding implementation method of the front end data based on accessor abduction |
CN107423142A (en) * | 2017-06-28 | 2017-12-01 | 北京明朝万达科技股份有限公司 | It is a kind of based on issue, the database message Notification Method of subscribing mode and system |
CN109376163A (en) * | 2018-09-18 | 2019-02-22 | 广州视源电子科技股份有限公司 | Data bidirectional binding method, device, terminal and storage medium |
-
2019
- 2019-12-20 CN CN201911326965.9A patent/CN110968318A/en not_active Withdrawn
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106484412A (en) * | 2016-09-30 | 2017-03-08 | 浙江大学 | A kind of two-way binding implementation method of the front end data based on accessor abduction |
CN106446292A (en) * | 2016-11-16 | 2017-02-22 | 北京集奥聚合科技有限公司 | Front-end data two-way binding achieving method and device |
CN107423142A (en) * | 2017-06-28 | 2017-12-01 | 北京明朝万达科技股份有限公司 | It is a kind of based on issue, the database message Notification Method of subscribing mode and system |
CN109376163A (en) * | 2018-09-18 | 2019-02-22 | 广州视源电子科技股份有限公司 | Data bidirectional binding method, device, terminal and storage medium |
Non-Patent Citations (1)
Title |
---|
CECELIA: "vue MVVM 双向绑定(数据劫持+发布者-订阅者模式)" * |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111580830A (en) * | 2020-05-12 | 2020-08-25 | 北京飞漫软件技术有限公司 | Binding and analyzing method for hypertext markup language document element |
CN111580830B (en) * | 2020-05-12 | 2023-09-15 | 北京飞漫软件技术有限公司 | Binding and parsing method for hypertext markup language document element |
CN111796577A (en) * | 2020-06-29 | 2020-10-20 | 中国第一汽车股份有限公司 | Data instruction processing method and device, vehicle and storage medium |
CN112100187A (en) * | 2020-08-31 | 2020-12-18 | 湖北美和易思教育科技有限公司 | Student learning data storage method and device based on VueJS |
CN112100187B (en) * | 2020-08-31 | 2024-01-26 | 武汉美和易思数字科技有限公司 | Student learning data storage method and device based on VueJS |
CN112579237A (en) * | 2020-12-17 | 2021-03-30 | 百果园技术(新加坡)有限公司 | Event response method, device, equipment and medium based on MVVM mode |
CN112579237B (en) * | 2020-12-17 | 2024-06-11 | 百果园技术(新加坡)有限公司 | Event response method, device, equipment and medium based on MVVM mode |
CN112527294A (en) * | 2020-12-18 | 2021-03-19 | 吉林亿联银行股份有限公司 | Vue bidirectional binding method and related device |
CN113204442A (en) * | 2021-05-31 | 2021-08-03 | 成都安恒信息技术有限公司 | Javascript library for operating IndexDB based on MVVM mode |
CN113204442B (en) * | 2021-05-31 | 2023-11-24 | 成都安恒信息技术有限公司 | MVVM mode-based javascript library system for operating IndexdDB |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110968318A (en) | Method for realizing JavaScript library of MVVM design mode | |
US10223082B2 (en) | Analysis of dynamic elements in bounded time | |
CN102597993B (en) | Managing application state information by means of uniform resource identifier (URI) | |
US8959477B2 (en) | Scripting language for business applications | |
US20120110560A1 (en) | Data type provider for a web semantic store | |
CN104932980A (en) | Automatic software test method and device | |
Stolee et al. | Identification, impact, and refactoring of smells in pipe-like web mashups | |
US8776010B2 (en) | Data type provider for a data store | |
Mushtaq et al. | Multilingual source code analysis: State of the art and challenges | |
CN111459537A (en) | Redundant code removing method, device, equipment and computer readable storage medium | |
US20080127128A1 (en) | Type Validation for Applications Incorporating A Weakly-Typed Language | |
CN106484488B (en) | Integrated cloud Compilation Method and system | |
Gunasinghe et al. | Language Server Protocol and Implementation | |
US20090024552A1 (en) | Unified development guidelines | |
Criado et al. | Heuristics-based mediation for building smart architectures at run-time | |
CN106991144B (en) | Method and system for customizing data crawling workflow | |
US20130111329A1 (en) | Hinting system at user interface design time | |
Dantas et al. | Towards aspect-oriented programming for context-aware systems: A comparative study | |
CN107783765A (en) | file compiling method and device | |
Pokozy-Korenblat et al. | Toward extracting π-calculus from UML sequence and state diagrams | |
US7873949B2 (en) | In source code suppression of binary analysis | |
Bernardi et al. | Web applications design evolution with UWA | |
Aksoy et al. | MATAWS: A multimodal approach for automatic WS semantic annotation | |
Islam et al. | PyMigBench and PyMigTax: A benchmark and taxonomy for Python library migration | |
Haga et al. | Inconsistency Checking of UML Sequence Diagrams and State Machines Using the Structure-Behavior Coalescence Method |
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 | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20200407 |
|
WW01 | Invention patent application withdrawn after publication |