Presentation failures in a website can negatively impact end users' perception of the quality of the website, the services it delivers, and the branding a company is trying to achieve. Presentation failures can oc...
详细信息
ISBN:
(纸本)9781479971251
Presentation failures in a website can negatively impact end users' perception of the quality of the website, the services it delivers, and the branding a company is trying to achieve. Presentation failures can occur easily in modern web applications because of the highly complex and dynamic nature of the HTML, CSS, and javascript that define a web page's visual appearance. Debugging such failures manually is time consuming and error-prone, and existing techniques do not provide an automated debugging solution. In this paper, we present our tool, WebSee, that provides a fully automated debugging solution for presentation failures in web applications. When run on real-world web applications, WebSee was able to accurately and quickly identify faulty HTML elements.
Web applications are replacing traditional native applications in recent years. For web applications, javascript is the most extensively used client side programming languages. The large javascript codebase often make...
详细信息
ISBN:
(纸本)9781479951802
Web applications are replacing traditional native applications in recent years. For web applications, javascript is the most extensively used client side programming languages. The large javascript codebase often makes applications hard to understand, maintain and extend. Call graph is a human understandable program representation that can be used as a basis for maintenance and further extension of the application. In maintenance phase call graph can play a vital role by facilitating developers to easily trace the code that implements a particular feature. There is insufficient tool support for generating call graph for javascript. For its dynamic nature, javascript call graph generation becomes challenging. We present a dynamic analysis based mechanism to construct the call graph of javascript of a client side web application. Our evaluation on web applications demonstrates that the technique is precise and the rate of unidentified nodes in call graph is acceptable.
Although some studies have been conducted in knapsack cryptosystems, it is not necessarily easy to generate keys in public-key cryptosystem. There are few open, scalability and easy to use systems. For web usage, prog...
详细信息
ISBN:
(纸本)9788988678558
Although some studies have been conducted in knapsack cryptosystems, it is not necessarily easy to generate keys in public-key cryptosystem. There are few open, scalability and easy to use systems. For web usage, programs written in java script have high transparency and scalability, and are very suitable for cryptosytems. This paper provides the necessary systems to generate keys, encrypt and decrypt in knapsack cryptosytem, which can be applied to most knapsack PKC by simply defining some functions including generating secret keys, translating into public keys and others. This paper also provides two examples, Merkle-Hellman and shifted odd knapsack PKC.
The cloud computing model leads to the increased penetration of the web applications in the office environment. Designed in many cases to replace traditional desktop software, web applications still lack many of the v...
详细信息
ISBN:
(纸本)9783642164187
The cloud computing model leads to the increased penetration of the web applications in the office environment. Designed in many cases to replace traditional desktop software, web applications still lack many of the valuable features present on the desktop that increase usability and productivity. Due to the highly isolated design of the browser, it is currently impossible for web applications to communicate with desktop environment, which usually means sending messages or receiving event notifications. This is often required in order to let the person using the application know about the important events happening in the minimized browser window. By contrast traditional applications can take the control of the desktop at any time. The paper introduces the Web4Desktop framework, a browser/client based architecture designed to overcome these limitations by proving a secure infrastructure that allows web applications to communicate with any desktop software implementing the Web4Desktop API. The framework can be utilized to add desktop integration to existing web applications, a step that requires only minimal changes in the web application's code and greatly improve the user experience because these applications will start to behave more like desktop software.
javascript is becoming the de-facto programming language of the Web. Large-scale web applications (web apps) written in javascript are commonplace nowadays, with big technology players (e.g., Google, Facebook) using i...
详细信息
ISBN:
(数字)9781538649695
ISBN:
(纸本)9781538649695
javascript is becoming the de-facto programming language of the Web. Large-scale web applications (web apps) written in javascript are commonplace nowadays, with big technology players (e.g., Google, Facebook) using it in their core flagship products. Today, it is common practice to reuse existing javascript code, usually in the form of third-party libraries and frameworks. If on one side this practice helps in speeding up development time, on the other side it comes with the risk of bringing dead code, i.e., javascript code which is never executed, but still downloaded from the network and parsed in the browser. This overhead can negatively impact the overall performance and energy consumption of the web app. In this paper we present Lacuna, an approach for javascript dead code elimination, where existing javascript analysis techniques are applied in combination. The proposed approach supports both static and dynamic analyses, it is extensible, and independent of the specificities of the used javascript analysis techniques. Lacuna can be applied to any javascript code base, without imposing any constraints to the developer, e.g., on her coding style or on the use of some specific javascript feature (e.g., modules). Lacuna has been evaluated on a suite of 29 publicly-available web apps, composed of 15,946 javascript functions, and built with different javascript frameworks (e.g., Angular, ***, jQuery). Despite being a prototype, Lacuna obtained promising results in terms of analysis execution time and precision.
Increased focus on java script performance has resulted in vast performance improvements for many benchmarks. However, for actual code used in websites, the attained improvements often lag far behind those for popular...
详细信息
ISBN:
(纸本)9781450327848
Increased focus on java script performance has resulted in vast performance improvements for many benchmarks. However, for actual code used in websites, the attained improvements often lag far behind those for popular benchmarks. This paper shows that the main reason behind this shortfall is how the compiler understands types. java script has no concept of types, but the compiler assigns types to objects anyway for ease of code generation. We examine the way that the Chrome V8 compiler defines types, and identify two design decisions that are the main reasons for the lack of improvement: (1) the inherited prototype object is part of the current object's type definition, and (2) method bindings are also part of the type definition. These requirements make types very unpredictable, which hinders type specialization by the compiler. Hence, we modify V8 to remove these requirements, and use it to compile the java script code assembled by JSBench from real websites. On average, we reduce the execution time of JSBench by 36%, and the dynamic instruction count by 49%.
This paper presents how it is possible to utilize PLC in the task of the Web server. Described is configuration of the PLC and its connection to the computer network. Next is described principle of creation dynamic we...
详细信息
ISBN:
(纸本)9781467344906;9781467344883
This paper presents how it is possible to utilize PLC in the task of the Web server. Described is configuration of the PLC and its connection to the computer network. Next is described principle of creation dynamic web page and described are function for process variable data read and write. User can create dynamic web page that uses combination of some programming language e. g. HTML, ASP (Active Server Pages) and java script. The process variables can be displayed on remote PC independently on operating system. There is only web browser needed. In the paper is also described principle of the desktop application that was programmed in the java language. This application directly communicates with remote PLC and has own visualization of the technological process. For communication with the PLC the opened and wide HTTP web protocol is used. Described principles present some alternative for well-known technology OPC. Inscribed principles were verified in application for temperatures measurement in the underground gasification process and for system of indirect temperature measurement.
We present an approach to detect function purity in javascript. A function is pure if none of its applications cause observable side-effects. The approach is based on a pushdown flow analysis that besides traditional ...
详细信息
ISBN:
(纸本)9781467375290
We present an approach to detect function purity in javascript. A function is pure if none of its applications cause observable side-effects. The approach is based on a pushdown flow analysis that besides traditional control and value flow also keeps track of write effects. To increase the precision of our purity analysis, we combine it with an intraprocedural analysis to determine freshness of variables and object references. We formalize the core aspects of our analysis, and discuss our implementation used to analyze several common javascript benchmarks. Experiments show that our technique is capable of detecting function purity, even in the presence of higher-order functions, dynamic property expressions, and prototypal inheritance.
Live programming is an idea espoused by programming environments from the earliest days of computing (such as Lisp machines and SmallTalk) but have since lain dormant. Recently, the prevalence of asynchronous feedback...
详细信息
ISBN:
(纸本)9781467330763
Live programming is an idea espoused by programming environments from the earliest days of computing (such as Lisp machines and SmallTalk) but have since lain dormant. Recently, the prevalence of asynchronous feedback in programming languages such as javascript and advances in visualizations and user interfaces have lead to a resurgence of live programming in online education communities (such as Khan Academy) and in experimental IDEs (such as LightTable). The LIVE 2013 workshop includes 11 papers describing visions, implementations, mashups, and new directions of live programming environments. The participants include both practitioners of live coding and researchers in programming languages and software engineering. Finally, several demos curated on the live workshop page are presented.
暂无评论