【24h】

JavaのStream APIに対する並び替えリファクタリングの提案

机译:JavaのStream APIに対する並び替えリファクタリングの提案

获取原文
获取原文并翻译 | 示例
           

摘要

JavaのStreamは複数要素に対する処理を実装する記法である.このような複数要素の操作は,プログラム全体の実行時間の大半を占め,さらに頻繁に行われる処理である.そのためStreamにおける処理の流れ,つまりAPIの呼び出し順序はプログラムの性能に影響を与える要因となる.そこで本研究では,プログラム実行速度の向上を目的とした,Stream APIの呼び出し順を並び替えるリファクタリング手法を提案する.提案手法では,Stream APIの性質と依存関係という2つの観点から各APIの組み合わせにおける入れ替え可能性を,APIの性質とステートフルなAPIかどうかの2点から実行速度面で適切なAPIの呼び出し順を体系化する.提案手法の有用性を評価する実験として,実際のプロジェクトにおいて誤用,つまり性能が低下する呼び出し順の事例がどの程度存在するかを調査した.結果として,可換なStream APIの組み合わせを使用している事例のうち,約20の事例において誤用が存在した.また,本手法を実際のプロジェクトにおける8件の誤用事例に適用し,APIの並び替えによる性能変化を調査することで提案手法の有効性を評価した.実験結果として,いずれの事例においても実行速度の向上が見られ,最大で126msの実行時間が短縮された.

著录项

获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号