継承:偶然の性能向上策
2025-05-08
Simulaが継承を発明したのは、コードの再利用や拡張性のためではなく、単純なガベージコレクションと侵入型リストに関する問題を解決するためでした。Simulaのガベージコレクタは、スタック変数へのポインタを処理するにはあまりにも単純でした。クラッシュを防ぐために、さまざまなパラメータ渡し方法が禁止され、表現力が制限されました。侵入型リストを効率的に使用するために、Simulaは「プリフィックス」(継承)を発明し、オブジェクトがリストノードを直接含めることを可能にし、追加のメモリ割り当てを回避しました。したがって、継承は当初、パフォーマンスの最適化であり、OOPの礎石ではありませんでした。
開発