論文の概要: Quantifying the benefits of code hints for refactoring deprecated Java APIs
- arxiv url: http://arxiv.org/abs/2412.08041v1
- Date: Wed, 11 Dec 2024 02:44:14 GMT
- ステータス: 翻訳完了
- システム内更新日: 2024-12-12 14:03:36.568127
- Title: Quantifying the benefits of code hints for refactoring deprecated Java APIs
- Title(参考訳): 非推奨のJava APIをリファクタリングするためのコードヒントのメリットの定量化
- Authors: Cristina David, Pascal Kesseli, Daniel Kroening, Hanliang Zhang,
- Abstract要約: このタスクの自動化には,コードヒントが有効であることを示す。
我々の実験は、コードヒントがこのタスクの自動化を可能にしていることを示している。
- 参考スコア(独自算出の注目度): 6.389227681009877
- License:
- Abstract: When done manually, refactoring legacy code in order to eliminate uses of deprecated APIs is an error-prone and time-consuming process. In this paper, we investigate to which degree refactorings for deprecated Java APIs can be automated, and quantify the benefit of Javadoc code hints for this task. To this end, we build a symbolic and a neural engine for the automatic refactoring of deprecated APIs. The former is based on type-directed and component-based program synthesis, whereas the latter uses LLMs. We applied our engines to refactor the deprecated methods in the Oracle JDK 15. Our experiments show that code hints are enabling for the automation of this task: even the worst engine correctly refactors 71% of the tasks with code hints, which drops to at best 14% on tasks without. Adding more code hints to Javadoc can hence boost the refactoring of code that uses deprecated APIs.
- Abstract(参考訳): 手作業で行うと、非推奨のAPIの使用を排除するためにレガシーコードをリファクタリングするのは、エラーを起こしやすく、時間を要するプロセスである。
本稿では,非推奨のJava APIのリファクタリングをどの程度自動化できるかを検証し,Javadocコードヒントの利点を定量化する。
この目的のために、非推奨のAPIの自動リファクタリングのためのシンボリックとニューラルエンジンを構築します。
前者はタイプ指向およびコンポーネントベースのプログラム合成に基づいており、後者はLLMを使用している。
Oracle JDK 15の非推奨のメソッドをリファクタリングするために、当社のエンジンを適用しました。
最悪のエンジンでさえ、コードヒントでタスクの71%を正しくリファクタリングします。
Javadocにより多くのコードヒントを追加することで、非推奨のAPIを使用するコードのリファクタリングを促進することができる。
関連論文リスト
- Automated Update of Android Deprecated API Usages with Large Language Models [8.507162624206956]
本稿では,大規模言語モデル(LLM)を用いてAndroid APIを更新する自動アプローチであるGUPPYを紹介する。
GUPPYは、非推奨のAPI使用率を更新し、旧APIレベルと新APIレベルの互換性を確保するために、最も強力なLCMの1つであるGPT-4を使用している。
最新のAPIレベル33,34から,20の非推奨APIから,さらに156の非推奨APIから,360度ベンチマークAPIを使用した評価を行った結果,GUPPYの最先端技術に対するメリットが示された。
論文 参考訳(メタデータ) (2024-11-07T03:01:50Z) - A Comprehensive Framework for Evaluating API-oriented Code Generation in Large Language Models [14.665460257371164]
GitHub CopilotやChatGPTのような大規模言語モデル(LLM)は、コード生成の強力なツールとして登場した。
API指向コード生成におけるLLMの機能を評価するために設計されたフレームワークであるAutoAPIEvalを提案する。
論文 参考訳(メタデータ) (2024-09-23T17:22:09Z) - Investigating the Transferability of Code Repair for Low-Resource Programming Languages [57.62712191540067]
大規模言語モデル(LLM)は、コード生成タスクにおいて顕著なパフォーマンスを示している。
近年の作業は、連鎖推論や蒸留といった現代的な技術を統合することで、コード修復のプロセスを強化している。
高低資源言語と低低資源言語の両方でコード修復を蒸留する利点について検討する。
論文 参考訳(メタデータ) (2024-06-21T05:05:39Z) - EM-Assist: Safe Automated ExtractMethod Refactoring with LLMs [9.474820853051702]
提案を生成し、その後検証し、拡張し、ランク付けするIntelliJ IDEAプラグインであるEM-Assistを紹介します。
オープンソースプロジェクトで実施された1,752の現実世界の評価では、EM-Assistのリコール率はトップ5の中で53.4%であり、以前のベストインクラスのツールでは39.4%だった。
論文 参考訳(メタデータ) (2024-05-31T00:32:04Z) - ReGAL: Refactoring Programs to Discover Generalizable Abstractions [59.05769810380928]
Generalizable Abstraction Learning (ReGAL)は、再利用可能な関数のライブラリをコード化して学習する手法である。
ReGALによって発見された共有関数ライブラリは、プログラムが様々な領域で容易に予測できることを示している。
CodeLlama-13Bでは、ReGALはLOGOで11.5%、日付理解で26.1%、TextCraftで8.1%という絶対精度が向上し、3つのドメインのうち2つでGPT-3.5を上回った。
論文 参考訳(メタデータ) (2024-01-29T18:45:30Z) - Handling Communication via APIs for Microservices [6.5499625417846685]
本稿では,従来の通信技術による課題について論じ,API経由のIDパスの代替手法を提案する。
また,API数を削減するアルゴリズムも考案した。
論文 参考訳(メタデータ) (2023-08-02T17:40:34Z) - Private-Library-Oriented Code Generation with Large Language Models [52.73999698194344]
本稿では,大規模言語モデル(LLM)をプライベートライブラリのコード生成に活用することに焦点を当てる。
プログラマがプライベートコードを書く過程をエミュレートする新しいフレームワークを提案する。
TorchDataEval、TorchDataComplexEval、MonkeyEval、BeatNumEvalの4つのプライベートライブラリベンチマークを作成しました。
論文 参考訳(メタデータ) (2023-07-28T07:43:13Z) - Do code refactorings influence the merge effort? [80.1936417993664]
複数のコントリビュータがソースコードを並行して変更して,新機能の実装やバグの修正,既存のコードの変更などを行っている。
これらの同時変更は、ソースコードの同じバージョンにマージする必要がある。
研究によると、すべてのマージの試みの10~20%が衝突を起こしており、これはプロセスを完了するために手動開発者の介入を必要とする。
論文 参考訳(メタデータ) (2023-05-10T13:24:59Z) - Interactive Code Generation via Test-Driven User-Intent Formalization [60.90035204567797]
大きな言語モデル(LLM)は、非公式な自然言語(NL)の意図からコードを生成する。
自然言語は曖昧であり、形式的な意味論が欠けているため、正確性の概念を定義するのは難しい。
言語に依存しない抽象アルゴリズムと具体的な実装TiCoderについて述べる。
論文 参考訳(メタデータ) (2022-08-11T17:41:08Z) - ReACC: A Retrieval-Augmented Code Completion Framework [53.49707123661763]
本稿では,語彙のコピーと類似したセマンティクスを持つコード参照の両方を検索により活用する検索拡張コード補完フレームワークを提案する。
我々は,Python および Java プログラミング言語のコード補完タスクにおけるアプローチを評価し,CodeXGLUE ベンチマークで最先端のパフォーマンスを実現する。
論文 参考訳(メタデータ) (2022-03-15T08:25:08Z) - How We Refactor and How We Document it? On the Use of Supervised Machine
Learning Algorithms to Classify Refactoring Documentation [25.626914797750487]
リファクタリングは、外部の振る舞いを変えることなく、システムの設計を改善する技術である。
この研究はコミットを、従来のBugFixやFunctionalのカテゴリとともに、内部QA、外部QA、Code Smell Resolutionの3つのカテゴリに分類する。
分類結果をよりよく理解するために、私たちはコミットメッセージを分析して、開発者が定期的に臭いを説明するために使用するパターンを抽出しました。
論文 参考訳(メタデータ) (2020-10-26T20:33:17Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。