In order to design a three-dimensional WebGIS which describes the geographic information of a smaller region like Huaiyin Institute of Technology, a method for building WebGIS is proposed. In details, LocaSpace Viewer...
详细信息
ISBN:
(纸本)9781538628133
In order to design a three-dimensional WebGIS which describes the geographic information of a smaller region like Huaiyin Institute of Technology, a method for building WebGIS is proposed. In details, LocaSpace Viewer and SketchUp are used to draw maps, ArcGIS API for javascript is used to develop project and Tomcat, ArcGIS Server is used to load users' requests. Experiments show that the application system obtains a very high efficiency. The results show as by proposed system architecture can satisfy the application requirements for the customers.
We present SymJS, a comprehensive framework for automatic testing of client-side javascript Web applications. The tool contains a symbolic execution engine for javascript, and an automatic event explorer for Web pages...
详细信息
ISBN:
(纸本)9781450330565
We present SymJS, a comprehensive framework for automatic testing of client-side javascript Web applications. The tool contains a symbolic execution engine for javascript, and an automatic event explorer for Web pages. Without any user intervention, SymJS can automatically discover and explore Web events, symbolically execute the associated javascript code, refine the execution based on dynamic feedbacks, and produce test cases with high coverage. The symbolic engine contains a symbolic virtual machine, a string-numeric solver, and a symbolic executable DOM model. SymJS's innovations include a novel symbolic virtual machine for javascript Web, symbolic+dynamic feedback directed event space exploration, and dynamic taint analysis for enhancing event sequence construction. We illustrate the effectiveness of SymJS on standard javascript benchmarks and various real-life Web applications. On average SymJS achieves over 90% line coverage for the benchmark programs, significantly outperforming existing methods.
javascript is both a popular client-side programming language and an attack vector. While malware developers transform their javascript code to hide its malicious intent and impede detection, well-intentioned develope...
详细信息
ISBN:
(纸本)9781665435727
javascript is both a popular client-side programming language and an attack vector. While malware developers transform their javascript code to hide its malicious intent and impede detection, well-intentioned developers also transform their code to, e.g., optimize website performance. In this paper, we conduct an in-depth study of code transformations in the wild. Specifically, we perform a static analysis of javascript files to build their Abstract Syntax Tree (AST), which we extend with control and data flows. Subsequently, we define two classifiers, benefitting from AST-based features, to detect transformed samples along with specific transformation techniques. Besides malicious samples, we find that transforming code is increasingly popular on *** libraries and client-side javascript, with, e.g., 90% of Alexa Top 10k websites containing a transformed script. This way, code transformations are no indicator of maliciousness. Finally, we showcase that benign code transformation techniques and their frequency both differ from the prevalent malicious ones.
jQuery is a javascript library which can he used by developers when creating webpages. It gained popularity among web developm for normalizing web APIs in a time when browser incompatibilities were more common. Howeve...
详细信息
ISBN:
(纸本)9781728119700
jQuery is a javascript library which can he used by developers when creating webpages. It gained popularity among web developm for normalizing web APIs in a time when browser incompatibilities were more common. However, modern browser vendors have adopted API standards which diminish the need for such a library. When these modern API standar& are used instead of IQuery, page size is lowered. causing an improvement in page performance. This paper introduces a tool called utliQuerify which can transform snippets that make use of jQuery's functionalities into equivalent code that uses modern web API standards. uniQuerify also aids developers by displaying relevant documentation and the steps taken to transform the code, increasing developer familiarity with modern APIs.
Bluetooth Low Energy (BLE) is currently the dominating wireless network solution for eHealth and sports. However, most BLE sensors require dedicated applications with limited development capabilities. This paper prese...
详细信息
ISBN:
(纸本)9781538642948
Bluetooth Low Energy (BLE) is currently the dominating wireless network solution for eHealth and sports. However, most BLE sensors require dedicated applications with limited development capabilities. This paper presents a method for rapid development of applications in distributed BLE IoT systems for eHealth and sports. The method is implemented as a javascript web framework based on HTML5 canvas, WebSocket and Web Bluetooth APIs. This paper demonstrates how the framework can be applied to develop an application for monitoring physical activity and heart rate. The framework enables software and service operators to iteratively create, tune and deploy filter algorithms in distributed BLE IoT systems, without rebooting nodes or restarting programs using dynamic software updating.
Hundreds of programming languages are available today and new ones are still emerging. Nevertheless, they are founded in several (old) paradigms. Knowing the essence of paradigms helps to orient oneself in this Babylo...
详细信息
ISBN:
(纸本)9783319565354;9783319565347
Hundreds of programming languages are available today and new ones are still emerging. Nevertheless, they are founded in several (old) paradigms. Knowing the essence of paradigms helps to orient oneself in this Babylon, which is challenging especially for the growing community of programmers with no computer science background. In this paper we focus on functional paradigm, which has a raising attention both in new languages (like Clojure and ClojureScript) and a growing support in traditional languages (like C++ and Java). We do not discuss why this happens here, but we focus on analysing fundamental concepts in the functional paradigm and functional programming languages. We describe them and divide them into two categories: key principles and additional principles. Next, we apply this conceptual framework to analyse the ES5 and ES6 versions of javascript. We conclude that ES6 is a good step towards functional principles support. Also, the presented conceptual framework may be used for similar analyses of other languages.
The javascript programming language, originally developed as a simple scripting language, is now the language of choice for web applications. All the top 100 sites on the web use javascript and its use outside web pag...
详细信息
ISBN:
(纸本)9781450315616
The javascript programming language, originally developed as a simple scripting language, is now the language of choice for web applications. All the top 100 sites on the web use javascript and its use outside web pages is rapidly growing. However, javascript is not yet ready for programming in the large: it does not support a module system. Lack of namespaces introduces module patterns, and makes it difficult to use multiple javascript frameworks together. In this paper, we propose a formal specification of a javascript module system. A module system for javascript will allow safe and incremental development of javascript web applications. While the next version of the javascript standard proposes a module system, it informally describes its design in prose. We formally specify a module system as an extension to the existing javascript language, and rigorously describe its semantics via desugaring to lambda(JS), a prior core calculus for javascript. We implement the desugaring process and show its faithfulness using real-world test suites. Finally, we define a set of properties for valid javascript programs using modules and formally prove that the proposed module system satisfies the validity properties.
Web developers often write test cases manually using testing frameworks such as Selenium. Testing javascript-based applications is challenging as manually exploring various execution paths of the application is diffic...
详细信息
ISBN:
(纸本)9781479902156
Web developers often write test cases manually using testing frameworks such as Selenium. Testing javascript-based applications is challenging as manually exploring various execution paths of the application is difficult. Also javascript's highly dynamic nature as well as its complex interaction with the DOM make it difficult for the tester to achieve high coverage. We present a framework to automatically generate unit test cases for individual javascript functions. These test cases are strengthened by automatically generated test oracles capable of detecting faults in javascript code. Our approach is implemented in a tool called PYTHIA. Our preliminary evaluation results point to the efficacy of the approach in achieving high coverage and detecting faults.
In this paper, we present jscefr (pronounced jes-cee-fer), a tool that detects the use of different elements of the javascript (JS) language, effectively measuring the level of proficiency required to comprehend and d...
详细信息
ISBN:
(纸本)9798350395693;9798350395686
In this paper, we present jscefr (pronounced jes-cee-fer), a tool that detects the use of different elements of the javascript (JS) language, effectively measuring the level of proficiency required to comprehend and deal with a fragment of javascript code in software maintenance tasks. Based on the pycefr tool, the tool incorporates javascript elements and the well-known Common European Framework of Reference for Languages (CEFR) and utilizes the official ECMAScript javascript documentation from the Mozilla Developer Network. jscefr categorizes JS code into six levels based on proficiency. jscefr can detect and classify 138 different javascript code constructs. To evaluate, we apply our tool to three javascript projects of the NPM ecosystem, with interesting results. A video demonstrating the tool's availability and usage is available at https://***/Ehh-Prq59Pc.
javascript has seen meteoric growth in popularity as it has increasingly become the language of choice for developers, both for front-end web development and server code development through various javascript framewor...
详细信息
ISBN:
(纸本)9781450358033
javascript has seen meteoric growth in popularity as it has increasingly become the language of choice for developers, both for front-end web development and server code development through various javascript frameworks and ***. Part of the reason for its wide use is that it is a prototype based language with dynamic types, making it easy to learn and program in. This flexibility and ease of programming comes at the cost of performance. There are two sources of significant slowdown. First, since the number and type of properties of prototypes is dynamic, accessing a property involves a slow dictionary lookup, as opposed to it being present at a fixed offset from the base address. Second, the dynamism in type of values necessitates wrapping and unwrapping of values into objects with a variety of checks including for type of the value. To mitigate these performance problems, this paper proposes JSCore, a core specialized for javascript execution, that vastly reduces the performance degradation due to the above two causes. It uses a hardware lookup table to accelerate property access, and extends the data path to store data types with the data, nearly eliminating the second source of slowdown. Combining the two, JSCore accelerates real world javascript applications by 23%.
暂无评论