C# 什么时候值得创建一个helper函数

C# 什么时候值得创建一个helper函数,c#,.net,powershell,namespaces,wmi,C#,.net,Powershell,Namespaces,Wmi,首先,虽然这个问题是围绕PowerShell提出来的,但这个问题本身与PowerShell无关,它是一个一般性的编程问题 我正在创建一些PowerShell脚本,我喜欢将所有内容分为函数和模块,这样,如果我以后需要它,我可以将其移植过来,也可以与社区共享 大多数时候,决定是否创建一个helper函数是非常容易的,但有时并不那么容易。我现在自己也面临着这些问题之一 我正在使用WMI做一些工作,并注意到没有“逻辑”方法来检索现有WMI命名空间(指定命名空间的子命名空间)的列表 我想,如果我能打电话给

首先,虽然这个问题是围绕PowerShell提出来的,但这个问题本身与PowerShell无关,它是一个一般性的编程问题

我正在创建一些PowerShell脚本,我喜欢将所有内容分为函数和模块,这样,如果我以后需要它,我可以将其移植过来,也可以与社区共享

大多数时候,决定是否创建一个helper函数是非常容易的,但有时并不那么容易。我现在自己也面临着这些问题之一

我正在使用WMI做一些工作,并注意到没有“逻辑”方法来检索现有WMI命名空间(指定命名空间的子命名空间)的列表

我想,如果我能打电话给你,不是很好吗

Get-CimNamespace -Namespace root\cimv2
并获取root\cimv2的子命名空间列表?做起来也非常简单,这就是问题所在

获取cimnespace-Namespace root\cimv2
所要做的就是<代码>获取CimInstance-Class\uuu命名空间-Namespace root\cimv2

因此,人们不得不问,这样一个功能有什么好处?我可以看到一对:

  • 使用Get CimInstance检索名称空间听起来不太合乎逻辑。毕竟,一个实例属于一个类,一个类属于一个名称空间,所以这有点像使用
    getcimdinstance
    来获取父对象的父对象。不是,但有点像
  • 拥有helper函数意味着用户不必知道名称空间保存在类_名称空间的实例下。它只是工作
  • 提供完整性
但是,请记住,
getcimpinstance
还有许多其他可能的参数,包括过滤器、查询远程计算机的能力等等。。。只有像直接调用
getcimnespace
这样灵活的函数,才真正值得使用它。这意味着接受尽可能多的参数,如
Get cimpinstance
,这意味着拥有它拥有的所有参数集,等等

为了避免人们不得不在
获取CimInstance
上编写
-Class\u命名空间
,似乎需要做很多工作,因此提出了一个问题。。。值得吗

什么时候划界?当您可以执行
.properties
时,是否值得创建一个只检索类属性的函数


是什么决定了什么时候值得做或不值得做这样的事情。

如果你有时间并且你真的想做,那么它是值得的。对于那些拥有全职软件开发职位的人来说,他们做事情并不是因为他们真的想做——他们必须花时间满足他们得到的要求,这样产品才有希望按时发货。