論文の概要: Cross-Language Dependencies: An Empirical Study of Kotlin-Java
- arxiv url: http://arxiv.org/abs/2405.04602v2
- Date: Fri, 26 Jul 2024 17:07:02 GMT
- ステータス: 処理完了
- システム内更新日: 2024-07-29 17:52:18.201728
- Title: Cross-Language Dependencies: An Empirical Study of Kotlin-Java
- Title(参考訳): 言語間の依存関係: Kotlin-Javaの実証的研究
- Authors: Qiong Feng, Huan Ji, Xiaotian Ma, Peng Liang,
- Abstract要約: Googleが2017年にAndroidアプリ開発の公式プログラミング言語としてKotlinを導入して以来、KotlinはAndroid開発で広く採用されている。
現実世界のプロジェクトでJavaとKotlinが相互に相互作用する方法については、限定的な研究がある。
我々は、3,227のJavaと8,630のKotlinソースファイルを持つ23のKotlin-Java実世界のプロジェクトについて実証的研究を行った。
- 参考スコア(独自算出の注目度): 1.5680371708311132
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: Background: Since Google introduced Kotlin as an official programming language for developing Android apps in 2017, Kotlin has gained widespread adoption in Android development. The inter-operability of Java and Kotlin's design nature allows them to coexist and interact with each other smoothly within a project. Aims: However, there is limited research on how Java and Kotlin interact with each other in real-world projects and what challenges are faced during these interactions. The answers to these questions are key to understanding these kinds of cross-language software systems. Methods: In this paper, we implemented a tool named DependEx-tractor, which can extract 11 kinds of Kotlin-Java dependencies, and conducted an empirical study of 23 Kotlin-Java real-world projects with 3,227 Java and 8,630 Kotlin source files. Results: Our findings revealed that Java and Kotlin frequently interact with each other in these cross-language projects, with access and call dependency types being the most dominant. Compared to files interacting with other files in the same language, Java/Kotlin source files, which participate in the cross-language interactions, undergo more commits. Additionally, among all Kotlin-Java problematic interactions, we identified seven common mistakes, along with their fixing strategies. Conclusions: The findings of this study can help developers understand and address the challenges in Kotlin-Java projects.
- Abstract(参考訳): 背景: 2017年にGoogleがAndroidアプリ開発の公式プログラミング言語としてKotlinを導入して以来、KotlinはAndroid開発で広く採用されている。
JavaとKotlinの設計特性の相互運用性により、プロジェクト内で相互に共存し、スムーズに対話することが可能になります。
しかし、実際のプロジェクトでJavaとKotlinが相互にどのように相互作用するか、そしてこれらの相互作用の中でどのような課題に直面しているかについては、限定的な研究がある。
これらの質問に対する回答は、この種のクロスランゲージなソフトウェアシステムを理解するための鍵となる。
メソッド: 本論文では,11種類のKotlin-Java依存関係を抽出可能なDependEx-tractorというツールを実装し,3,227のJavaおよび8,630のKotlinソースファイルを持つ,23のKotlin-Java実世界のプロジェクトについて実証的研究を行った。
結果: この2つの言語プロジェクトにおいて,JavaとKotlinが相互に頻繁に対話し,アクセスと呼び出しの依存性型が最も優勢であることが判明した。
同じ言語の他のファイルと対話するファイルと比較すると、言語間のインタラクションに参加するJava/Kotlinソースファイルは、より多くのコミットを実行する。
さらに、KotlinとJavaのすべての問題のあるインタラクションの中で、修正戦略とともに7つの一般的な誤りを特定しました。
結論: この研究の結果は、Kotlin-Javaプロジェクトの課題を理解し、対処するのに役立ちます。
関連論文リスト
- How Do Developers Use Type Inference: An Exploratory Study in Kotlin [3.382017614888546]
KotlinはAndroid開発のデフォルト言語であり、最大のソフトウェアマーケットプレースのひとつです。
ソフトウェアリポジトリをマイニングするツールであるBoaを用いて,大規模な実証的研究を行う。
この結果,ローカル変数や変数に対して,ファイル外でメソッド呼び出しが宣言される場合,型推論が頻繁に使用されることがわかった。
論文 参考訳(メタデータ) (2024-10-30T18:07:21Z) - Local Software Buildability across Java Versions (Registered Report) [0.0]
Javaのバージョン6から23をインストールしたコンテナで、すべてのプロジェクトを自動ビルドしようとします。
成功または失敗は終了コードによって決定され、標準出力とエラーストリームは保存される。
論文 参考訳(メタデータ) (2024-08-21T11:51:00Z) - JavaBench: A Benchmark of Object-Oriented Code Generation for Evaluating Large Language Models [22.95865189208591]
OOP機能を実行するプロジェクトレベルのJavaベンチマークであるJavaBenchを提案する。
106のJavaクラスに389のメソッドを持つ4つのJavaプロジェクトで構成されている。
282人の大学生が合格し、平均スコアは90.93/100である。
論文 参考訳(メタデータ) (2024-06-10T06:43:25Z) - Depends-Kotlin: A Cross-Language Kotlin Dependency Extractor [3.0915964434574175]
Depends-KotlinはKotlinコード内のエンティティの依存関係の抽出をサポートする。
KotlinとJava間の依存関係関係も抽出できる。
Depends-Kotlinは、Kotlin-KotlinとKotlin-Javaの依存関係関係を解決する際に、高い精度とパフォーマンスを示す。
論文 参考訳(メタデータ) (2024-01-30T10:15:35Z) - Learning From Free-Text Human Feedback -- Collect New Datasets Or Extend
Existing Ones? [57.16050211534735]
一般的な対話データセットにおける自由文フィードバックのタイプと頻度について検討する。
この結果から, エラータイプ, ユーザ応答タイプ, それらの関係性など, 調査したデータセットの構成に関する新たな知見が得られた。
論文 参考訳(メタデータ) (2023-10-24T12:01:11Z) - Sparkles: Unlocking Chats Across Multiple Images for Multimodal Instruction-Following Models [60.81438804824749]
マルチモーダル命令追従モデルは、テキストと画像を統合することで機能を拡張する。
MiniGPT-4やLLaVAのような既存のモデルは、複数の画像を含むシナリオにおける対話コヒーレンスを維持する上で課題に直面している。
本稿では,単語レベルのインターリーブ・マルチイメージとテキストインタラクションに適した,最初の機械生成対話データセットであるSparklesDialogueを紹介する。
次に、複数の画像にまたがるオープンエンド対話のためのマルチモーダル命令追従モデルSparklesChatを紹介する。
論文 参考訳(メタデータ) (2023-08-31T05:15:27Z) - LongBench: A Bilingual, Multitask Benchmark for Long Context Understanding [58.20031627237889]
LongBenchは、コンテキスト理解のための最初のバイリンガルでマルチタスクのベンチマークである。
英語と中国語の6つのタスクカテゴリにまたがる21のデータセットで構成され、平均的な長さは6,711語(英語)と13,386文字(中国語)である。
論文 参考訳(メタデータ) (2023-08-28T11:53:40Z) - InterCode: Standardizing and Benchmarking Interactive Coding with
Execution Feedback [50.725076393314964]
標準的な強化学習環境として,インタラクティブコーディングの軽量でフレキシブルで使いやすいフレームワークであるInterCodeを紹介した。
私たちのフレームワークは、言語とプラットフォームに依存しない、自己完結型のDocker環境を使用して、安全で再現可能な実行を提供します。
我々は、異なるプロンプト戦略で構成された複数の最先端LLMを評価することにより、InterCodeの生存性をテストベッドとして示す。
論文 参考訳(メタデータ) (2023-06-26T17:59:50Z) - Automatic Specialization of Third-Party Java Dependencies [3.7973152331947815]
大規模なコードの再利用は、開発コストと時間の両方を大幅に削減します。
ソフトウェアプロジェクトにおけるサードパーティのコードの大規模なシェアは、特にメンテナンスとセキュリティに関して、新たな課題を引き起こします。
そこで本研究では,Javaプロジェクトの実際の利用状況に基づいて,Javaプロジェクトの依存関係を専門化する新しい手法を提案する。
論文 参考訳(メタデータ) (2023-02-16T15:37:49Z) - KETOD: Knowledge-Enriched Task-Oriented Dialogue [77.59814785157877]
対話システム研究における既存の研究は、主にタスク指向の対話とチャットを独立したドメインとして扱う。
本研究では,タスク指向対話と知識ベースチップチャットを一つのモデルに効果的に統合する方法について検討する。
論文 参考訳(メタデータ) (2022-05-11T16:01:03Z) - Reasoning in Dialog: Improving Response Generation by Context Reading
Comprehension [49.92173751203827]
マルチターンダイアログでは、発話が文の完全な形を取るとは限らない。
読み解きの質問に答えるモデルの能力を検討し、応答生成性能の向上を提案する。
論文 参考訳(メタデータ) (2020-12-14T10:58:01Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。