参照 (計算機科学) 外部収納と内部収納

参照 (計算機科学)

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2023/12/27 17:39 UTC 版)

外部収納と内部収納

多くのデータ構造の中で、大きく複雑なオブジェクトは小さなオブジェクト群から構成されている。そのようなオブジェクト群の格納方法は以下のように2つに分けられる。

  1. 内部収納(internal storage)[要出典]では、小さなオブジェクトの内容は大きなオブジェクトの内部に格納されている。
  2. 外部収納(external storage)[要出典]では、小さなオブジェクトは独自の場所に置かれ、大きなオブジェクトはそれへの参照のみを格納する。

内部収納は、参照のための領域や動的メモリアロケーションのためのメタデータを必要とせず、デリファレンスや小さなオブジェクト用のメモリ確保に要する時間も節約でき、効率的である。内部収納は、同種の大きなオブジェクトをメモリ内に連続して配置することで「参照の局所性」を高める効果もある。しかし、外部収納が好まれる状況も以下のようにさまざま存在する。

  • データ構造が再帰的(つまり自身を内包する可能性がある)ならば、内部収納は不可能である。
  • 大きなオブジェクトが限られた領域に格納されている場合(例えばスタック)、オーバーラン(オーバーフロー)を防ぐためにその内容の大部分を外部収納にして物理的なサイズを削減する必要があるかもしれない。
  • 小さなオブジェクトのサイズが可変である場合、それを内部収納すると大きなオブジェクトを可変サイズとする必要が生じ、効率が悪くなることがある。
  • 参照を使うことで仕様変更などに柔軟に対応できる。

一例としてJavaでは、プリミティブ型は内部収納であり、オブジェクト(クラス型)や配列は外部収納である。







英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「参照 (計算機科学)」の関連用語

参照 (計算機科学)のお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



参照 (計算機科学)のページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
All text is available under the terms of the GNU Free Documentation License.
この記事は、ウィキペディアの参照 (計算機科学) (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。 Weblio辞書に掲載されているウィキペディアの記事も、全てGNU Free Documentation Licenseの元に提供されております。

©2024 GRAS Group, Inc.RSS