来自: http: //www.parashift.com/c++-faq-lite/basics-of-inheritance.html#faq-19.9
三键:ROI、ROI、ROI。
您构建的每个界面都有成本和收益。您构建的每个可重用组件都有成本和收益。每一个测试用例,每一个结构清晰的东西——a-ma-bob,每一项投资。如果该投资没有积极的回报,您永远不应该在任何事情上投入任何时间或任何金钱。如果您的公司花费的成本超过节省的成本,请不要这样做!
不是每个人都同意我的观点;他们有权犯错。例如,生活在离现实世界足够远的地方的人表现得好像每一项投资都是好的。毕竟,他们的理由是,如果你等待的时间足够长,有一天它可能会为某人节省一些时间。也许。我们希望。
整个推理过程是不专业和不负责任的。你没有无限的时间,所以要明智地投资。当然,如果你住在象牙塔里,你就不必担心那些被称为“时间表”或“客户”的讨厌的东西。但在现实世界中,您是按计划工作的,因此您必须只将时间投入到能够获得良好回报的地方。
回到最初的问题:什么时候应该花时间构建受保护的接口?答:当您从该投资中获得良好回报时。如果要花费你一个小时,请确保它为某人节省了一个多小时,并确保节省的钱不是“有一天会越过彩虹”。如果您可以在当前项目中节省一个小时,那就很容易了:去吧。如果有一天它会为其他项目节省一个小时,也许我们希望,那就不要这样做。如果介于两者之间,您的答案将取决于您的公司究竟如何权衡未来与现在。
要点很简单:不要做会破坏你的日程安排的事情。(或者如果你这样做了,请确保你永远不要和我一起工作;我会让你头疼的。)如果投资有回报,投资是好的。不要天真幼稚;长大后意识到有些投资是不好的,因为总的来说,它们的成本高于回报。
好吧,我不明白如何将它与受 C++ 保护的接口相关联。
请提供任何真实的 C++ 示例来说明此常见问题解答的内容。