論文の概要: JavaScript Dead Code Identification, Elimination, and Empirical
Assessment
- arxiv url: http://arxiv.org/abs/2308.16729v1
- Date: Thu, 31 Aug 2023 13:48:39 GMT
- ステータス: 処理完了
- システム内更新日: 2023-10-23 11:43:30.360726
- Title: JavaScript Dead Code Identification, Elimination, and Empirical
Assessment
- Title(参考訳): javascriptのデッドコード識別、削除、経験的評価
- Authors: Ivano Malavolta, Kishan Nirghin, Gian Luca Scoccia, Simone Romano,
Salvatore Lombardi, Giuseppe Scanniello, Patricia Lago
- Abstract要約: Lacunaは、WebアプリからJavaScriptのデッドコードを自動的に検出し、削除するアプローチである。
我々は、モバイルWebアプリケーションのコンテキストにおいて、エネルギー消費、パフォーマンス、ネットワーク使用量、リソース使用量の観点から、JavaScriptデッドコードの実行時のオーバーヘッドを実証的に評価する実験を行う。
- 参考スコア(独自算出の注目度): 13.566269406958966
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: Web apps are built by using a combination of HTML, CSS, and JavaScript. While
building modern web apps, it is common practice to make use of third-party
libraries and frameworks, as to improve developers' productivity and code
quality. Alongside these benefits, the adoption of such libraries results in
the introduction of JavaScript dead code, i.e., code implementing unused
functionalities. The costs for downloading and parsing dead code can negatively
contribute to the loading time and resource usage of web apps. The goal of our
study is two-fold. First, we present Lacuna, an approach for automatically
detecting and eliminating JavaScript dead code from web apps. The proposed
approach supports both static and dynamic analyses, it is extensible and can be
applied to any JavaScript code base, without imposing constraints on the coding
style or on the use of specific JavaScript constructs. Secondly, by leveraging
Lacuna we conduct an experiment to empirically evaluate the run-time overhead
of JavaScript dead code in terms of energy consumption, performance, network
usage, and resource usage in the context of mobile web apps. We applied Lacuna
four times on 30 mobile web apps independently developed by third-party
developers, each time eliminating dead code according to a different
optimization level provided by Lacuna. Afterward, each different version of the
web app is executed on an Android device, while collecting measures to assess
the potential run-time overhead caused by dead code. Experimental results,
among others, highlight that the removal of JavaScript dead code has a positive
impact on the loading time of mobile web apps, while significantly reducing the
number of bytes transferred over the network.
- Abstract(参考訳): WebアプリはHTML、CSS、JavaScriptの組み合わせを使って構築される。
現代的なWebアプリを開発する一方で、開発者の生産性とコード品質を改善するために、サードパーティのライブラリやフレームワークを利用するのが一般的です。
これらのメリットに加えて、そのようなライブラリの採用によってJavaScriptデッドコード、すなわち未使用の機能を実装するコードが導入される。
デッドコードのダウンロードと解析のコストは、webアプリの読み込み時間とリソース使用量に負の影響を与えます。
私たちの研究の目標は2倍です。
まず,javascriptのデッドコードをwebアプリから自動検出して削除するアプローチであるlacunaを紹介する。
提案手法は静的解析と動的解析の両方をサポートし、拡張可能であり、コーディングスタイルや特定のjavascriptコンストラクタの使用に制約を課すことなく、任意のjavascriptコードベースに適用することができる。
第2に,lacunaを活用することで,モバイルwebアプリケーションのコンテキストにおけるjavascriptデッドコードの実行時のオーバーヘッドを,エネルギー消費,パフォーマンス,ネットワーク使用,リソース使用という観点から実証的に評価する実験を行う。
サードパーティ開発者が独自に開発した30のモバイルWebアプリケーションに対して,Lacunaを4回適用しました。
その後、Webアプリの各バージョンがAndroidデバイス上で実行され、デッドコードによる潜在的ランタイムオーバーヘッドを評価するための指標が収集される。
実験の結果は、javascriptのデッドコードの削除がモバイルwebアプリのロード時間にプラスの影響を与え、ネットワーク上で転送されるバイト数を大幅に削減している点を強調している。
関連論文リスト
- Fakeium: A Dynamic Execution Environment for JavaScript Program Analysis [3.7980955101286322]
Fakeiumは、JavaScriptプログラムの効率的で大規模な動的解析のために設計された、新しい、オープンソースで軽量な実行環境である。
Fakeiumは、API呼び出しと文字列リテラルを追加することで、従来の静的解析を補完する。
Fakeiumの柔軟性と、特に難解なソースで隠れたAPI呼び出しを検出する能力は、セキュリティアナリストが悪意のある振る舞いを検出する貴重なツールとしての可能性を強調している。
論文 参考訳(メタデータ) (2024-10-28T09:27:26Z) - jscefr: A Framework to Evaluate the Code Proficiency for JavaScript [1.7174932174564534]
jscefr(Jes-cee-fer)は、JavaScript(JS)言語のさまざまな要素の使用を検出するツールである。
jscefrはJSコードを6つのレベルに分類する。
論文 参考訳(メタデータ) (2024-08-29T11:37:49Z) - Chain-of-Experts (CoE): Reverse Engineering Software Bills of Materials for JavaScript Application Bundles through Code Clone Search [5.474149892700497]
ソフトウェア・ビル・オブ・マテリアル(Software Bill of Materials, SBOM)は、ソフトウェアアーティファクトに含まれるすべてのコンポーネント、ライブラリ、モジュールの詳細な在庫である。
JavaScriptアプリケーションバンドルは、デプロイ用に統合され、シンボルストラップされ、最適化されたコードのアセンブリである。
JavaScriptアプリケーションバンドルからリバースエンジニアリングプロセスを通じてSBoMを生成することで、サプライヤのソフトウェアリリースの整合性、セキュリティ、コンプライアンスが保証される。
論文 参考訳(メタデータ) (2024-08-29T01:32:49Z) - Native vs Web Apps: Comparing the Energy Consumption and Performance of
Android Apps and their Web Counterparts [5.18539596100998]
5つのカテゴリで10のインターネットコンテンツプラットフォームを選択します。
エネルギー消費、ネットワークトラフィック量、CPU負荷、メモリ負荷、およびネイティブおよびWebバージョンのフレーム時間に基づいて測定する。
論文 参考訳(メタデータ) (2023-08-31T13:51:56Z) - InterCode: Standardizing and Benchmarking Interactive Coding with
Execution Feedback [50.725076393314964]
標準的な強化学習環境として,インタラクティブコーディングの軽量でフレキシブルで使いやすいフレームワークであるInterCodeを紹介した。
私たちのフレームワークは、言語とプラットフォームに依存しない、自己完結型のDocker環境を使用して、安全で再現可能な実行を提供します。
我々は、異なるプロンプト戦略で構成された複数の最先端LLMを評価することにより、InterCodeの生存性をテストベッドとして示す。
論文 参考訳(メタデータ) (2023-06-26T17:59:50Z) - Neural Embeddings for Web Testing [49.66745368789056]
既存のクローラは、状態等価性を評価するために、アプリ固有のしきい値ベースのアルゴリズムに依存している。
ニューラルネットワークの埋め込みとしきい値のない分類器に基づく新しい抽象関数WEBEMBEDを提案する。
WEBEMBEDは,9つのWebアプリケーションに対する評価の結果,近距離検出により最先端技術よりも精度が高いことがわかった。
論文 参考訳(メタデータ) (2023-06-12T19:59:36Z) - CONCORD: Clone-aware Contrastive Learning for Source Code [64.51161487524436]
セルフ教師付き事前トレーニングは、多くのダウンストリームSEタスクに価値のあるジェネリックコード表現を学ぶための牽引役になった。
汎用的な表現学習のために、開発者が日々どのようにコードをコーディングするかは、要因としても不可欠である、と私たちは主張する。
特に,表現空間に良性クローンを近づける自己教師型コントラスト学習戦略であるCONCORDを提案する。
論文 参考訳(メタデータ) (2023-06-05T20:39:08Z) - A Static Evaluation of Code Completion by Large Language Models [65.18008807383816]
単純なプログラミング問題に対するモデル生成コードの機能的正当性を評価するために,実行ベースベンチマークが提案されている。
プログラムを実行せずにエラーを検出するlinterのような静的解析ツールは、コード生成モデルを評価するために十分に研究されていない。
抽象構文木を利用して,Pythonのコード補完における静的エラーを定量化する静的評価フレームワークを提案する。
論文 参考訳(メタデータ) (2023-06-05T19:23:34Z) - ReACC: A Retrieval-Augmented Code Completion Framework [53.49707123661763]
本稿では,語彙のコピーと類似したセマンティクスを持つコード参照の両方を検索により活用する検索拡張コード補完フレームワークを提案する。
我々は,Python および Java プログラミング言語のコード補完タスクにおけるアプローチを評価し,CodeXGLUE ベンチマークで最先端のパフォーマンスを実現する。
論文 参考訳(メタデータ) (2022-03-15T08:25:08Z) - Contrastive Code Representation Learning [95.86686147053958]
一般的な再構成に基づくBERTモデルは,ソースコードの編集に敏感であることを示す。
コントラコード(ContraCode)は、コード機能を学ぶのにフォームではなく、コントラスト的な事前学習タスクである。
論文 参考訳(メタデータ) (2020-07-09T17:59:06Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。