我最近在其他地方表达了我的观点,但我认为它值得进一步分析,所以我将其作为自己的问题发布。
假设我需要在程序中创建和传递一个容器。至少在这个阶段,我可能对一种容器与另一种容器没有强烈的意见,但我会选择其中一种;为了论证,我们假设我要使用一个 List<>。
问题是:编写方法时,是否更好接受和返回高级接口(例如C#的 IEnumerable)?还是应该编写方法来接受和传递我选择的特定容器类。
我应该寻找哪些因素和标准来决定?哪种类型的程序可以从其中一种或另一种中受益?计算机语言是否影响您的决策?性能?程序大小?个人风格?
(这真的很重要吗?)
**(作业:找到它。但在寻找我的答案之前,请在此处发布您的答案,以免被偏见影响。)*