差出人:http://www.parashift.com/c++-faq-lite/basics-of-inheritance.html#faq-19.9
3つのキー:ROI、ROI、ROI。
構築するすべてのインターフェースには、コストとメリットがあります。構築するすべての再利用可能なコンポーネントには、コストとメリットがあります。すべてのテストケース、すべてのきれいに構造化されたもの、あらゆる種類の投資。その投資にプラスの見返りがない場合は、いかなる時間やお金も投資してはいけません。それがあなたの会社にそれが節約するより多くの費用がかかるならば、それをしないでください!
誰もがこれについて私に同意するわけではありません。彼らには間違っている権利があります。たとえば、現実の世界から十分に離れて住んでいる人々は、すべての投資が良いように振る舞います。結局のところ、彼らは、あなたが十分長く待つならば、それはいつか誰かの時間を節約するかもしれないと推論します。多分。望みでは。
その推論の全行は専門家ではなく、無責任です。あなたには無限の時間がないので、賢く投資してください。確かに、象牙の塔に住んでいる場合は、「スケジュール」や「顧客」と呼ばれる厄介なことを心配する必要はありません。しかし、現実の世界では、あなたはスケジュールの範囲内で仕事をしているので、あなたはあなたが良い見返りを得るところだけにあなたの時間を投資しなければなりません。
元の質問に戻ります。保護されたインターフェイスの構築にいつ時間を費やす必要がありますか?回答:その投資に対して十分な見返りが得られたとき。1時間かかる場合は、1時間以上誰かを節約できることを確認し、節約が「いつか虹の彼方に」ならないようにします。現在のプロジェクト内で1時間節約できるのであれば、それは簡単です。いつか他のプロジェクトを1時間節約できるとしたら、そうしないでください。そしてそれがその中間である場合、あなたの答えはあなたの会社が現在に対して未来をどのようにトレードオフするかによって正確に異なります。
要点は簡単です。スケジュールを損なう可能性のあることをしないでください。(または、そうする場合は、決して私と一緒に作業しないようにしてください。私はあなたの頭を大皿に置きます。)その投資の見返りがあれば、投資は良いことです。素朴で子供っぽくならないでください。成長して、いくつかの投資は、バランスをとって、彼らが返すよりも多くの費用がかかるので、悪いことに気づきます。
さて、これをC++で保護されたインターフェイスに関連付ける方法がわかりませんでした。
このFAQが何について話しているかを示すために、実際のC++の例を教えてください。