c# – 在不可变的构造函数方法中验证构造函数参数是不是很好或者
发布时间:2020-12-16 00:22:02 所属栏目:百科 来源:网络整理
导读:您有一个不可变对象,并在构造函数中设置其内部变量,该构造函数接受几个参数. 题: 你是否看到在不可变对象的构造函数方法中对VALIDATE构造函数参数有任何问题,如果无效则抛出ArgumentExceptions? (对我来说这很有意义,但我想问一下,如果有一些更好的方法或
您有一个不可变对象,并在构造函数中设置其内部变量,该构造函数接受几个参数.
题: (对我来说这很有意义,但我想问一下,如果有一些更好的方法或某些东西不合适 – 例如,如果它是一个更好的设计,将验证从构造函数移动到工厂) 或者,如果我通过改写问题来概括它: 将业务规则明智的逻辑放在构造函数方法中是否可以?或者构造函数总是只做设置对象的内部结构? 谢谢 解决方法
在某种程度上,在构造函数本身中进行验证是有意义的,因为您知道它的所有用法都将通过该单点,并且任何其他将使用您的代码的开发人员都将受到保护,因为您的“低级” “验证.
如果您将验证移到调用链的更高位置,则会使类代码更加清晰,但是您会将代码暴露给“您使用错误”错误的可能性. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |