我有一个情况,我有一个主窗体,弹出一个高级配置表单,只有六个匹配的复选框和组合框,以选择一些高级选项(复选框启用/禁用,组合选择一个媒体如果启用).
如果我只是将检查和组合框的各个设置传递给对话框的构造函数,这显然是十几个参数,这看起来有点过分.
我的另一个显而易见的选择是,因为在主窗体中这些设置存储在一个大的IDictionary中,其中包含所有其他主要的表单设置,我可以将这个字典传入并随后用更新的值获取它,但我的理解是这个不会真的是非常好的编码练习.
我错过了一个很好的方法来做到这一点既高效又良好的编码实践?
(这个特殊的代码在C#中,虽然我觉得一般的解决方案也适用于其他语言)
我个人会创建一个载体对象来存储值.然后你得到了很好的intellisense,对它的改变将非常简单.它也比参数值的字典查找更快.当然,你得到了类型安全.:)