それは愚かな質問のように思えるかもしれませんが、私はとても好奇心が強く、問題について話すときに正しい用語を使用したいと思います。ここで同様の質問が見つからなかったため、新しい質問を作成することにしました。
「実装の置き換え」の上書きまたは上書きを参照する必要がありますか?言語固有ですか?
一般的に使用されるWordはオーバーライドであり、ウィキペディアからも読むことができるため、言語固有ではありません: http://en.wikipedia.org/wiki/Method_overriding
ある実装を別の実装に完全に置き換える場合、「overwriting」またはより一般的には「replacing」です。特定のケースで実装を別の実装に置き換える場合は、「オーバーライド」です。
「overwrite」とは、何か他のものをその場所に置き、上書きされたものを破壊することです。 「override」とは、オーバーライドされたものを傷つけたり変更したりせずに、何かの代わりに他の何かを動作させることです。
これは、OverridingとOverwritingの違いが何であるかについての私の理解です。実世界の例に関して:
自動車製造会社があるとします。彼らは常にあなたを信頼し、あなたの製品を購入するので、あなたは有名であなたの顧客に満足しています。
ビジネスを進めるには、基本的に2つのオプションがあります。
すべてのものが通過し、あなたは正しい道に足を踏み入れることを知っています。そのため、以前のモデルを維持するだけでなく、それらを強化し続ける必要があります。でも、どうして?おそらく、既存のモデルにいくつかの新しい機能を追加することによって!現在、新しいモデルすべての機能を備えています[〜#〜] plus [〜#〜]新しく強化された機能。
あなたはあなたが行った方法がちょっと間違っていたことを知っています!なんというひどいアプローチ!!会社はテクノロジー全体を変更する必要があることにすぐに気づきます。そうしないと、厳しい状況(破産など)に陥ります。
結局のところ、プログラミングに関しては、最初のアプローチはオーバーライドを参照します。これは、新しい動作を追加するためです。アプローチはOverwritingを参照します。振る舞いを完全に変更し、新しい機能を最初から開発するためです。
これがお役に立てば幸いです。
両方とも一般的な用語であるOverride
は、以前のアクションまたは決定の防止であり、一方でOverwrite
は以前に書かれたものの上に書かれているものを指します。
簡単な言葉で言えば、
アクションと決定はオーバーライドされます。
情報は上書きされます。
何らかの文脈を与えられれば、理解し区別することは非常に容易になると思います。
From[〜#〜] apue [〜#〜]§10.17:
POSIX.1は、
abort
がプロセスによるsignal(SIGABRT
)のブロックまたは無視をオーバーライドすることも指定しています。
Bing辞書から:
sthをオーバーライドします。sbの決定、順序などを拒否するために権限を使用します。
ここでオーバーライドは、より高い権限によって何かを「無視」することを意味します。 abort
は、プロセスのシグナルマスクを置き換えるものではなく、上位の権限を持つ制約を「無視」するだけです。
overrideとoverwriteはまったく異なる2つの単語だと思います。 overwriteは、古いコンテンツを置き換えるためのWordである必要があります。