所以我有一种情况,根据我想要的最终结果,我需要不同数量的函数参数.
我是C#的新手,并且听说过重载函数,这不是我以前见过的(我从JavaScript开始).
但它看起来有点脏,即使它确实有效,也不是一个好的做法.使用重载函数通常不是一个好主意,我可能会做更多工作的替代方案,但重载会让生活更轻松.
使用多个具有相同名称的方法感觉非常不舒服.这些是标准功能和可接受的代码实践吗?或者它可能导致未来的一些混乱问题,我的缺乏经验还不知道,因此我应该避免它?
功能过载.
命名实际上是方法重载.C#与返回值的方法和不返回值的方法没有直接的区别.因此方法.
但它看起来有点脏
它是语言的一个关键组成部分,这是一种常见的做法,绝对不会令人不悦.
即使它确实有效,也不是一个好的做法.
该想法是为消费者提供不同的变体.一个消费者可能只有X型才能使用,而只提供Y型.通过提供更多,库和/或实例更灵活.此外,通过让消费者转换数据以使其进入方法,它可以解决故障点.
(我从JavaScript开始).
不要尝试以习惯的语言风格编程.使用所设计的任何新语言的特定功能.通过尝试在C#中使用Java或在C#中使用Ruby是愚蠢的.所有语言都有自己的设计点...程序语言,而不是编程风格.
只是感觉非常不舒服,有多个同名的方法.
来自一种非类型安全的语言,这是一种可以理解的反应.但请记住,编译器正在强制执行安全性,以便小部件X仅与小部件X匹配; 这是一个真正的功能,而不是一个噱头.
坦率地说,当我看到不提供多次重载的代码时,我将其视为开发人员的懒惰或某些上帝可怕的时间紧缩,因此匆忙的代码.
不要太过分了......只需提供足够的重载就可以让大多数消费者使用该类.
或者它可能在未来导致一些混乱的问题
如果一个不一致,可能是的.
因此,在变量的位置上保持一致.如果int启动方法,另一种方法也应该以相同的方式开始int; 如果提供.不要混合订单.