这是我的问题......
我在电信行业工作,并拥有一个软件,为给定的服务号码或站点安装地址提供最佳网络.我的公司使用批发商的网络,我们也有自己的网络.为了评估客户可能获得的服务,我打电话给网络服务,找出给定电话交换机上可用的服务,并根据可用的服务,我需要对我们的网络或批发网络进行一些检查.供应商.
我的问题是如何使用C#中的接口建模?我所拥有的软件没有使用任何接口和任何类,只是为了满足代码不能在类外部生活的事实.
我熟悉接口的概念,至少在理论层面上,但不熟悉接口编程的概念.
我在想的是以下几点:
创建一个名为IServiceQualification的接口,该接口将定义一个操作:void Qualify().有两个名为QualifyByNumber和QualifyByAddress的类,它们都实现了接口并定义了Qualify操作的细节.我是在思考正确的方向,还是有一种不同/更好的方法来解决这个问题.
我已经阅读了一些接口编程的例子,但是希望在工作情况下看到这个.
意见/建议是最受欢迎的.
我可能会让它更深入一点,但你走在正确的轨道上。我个人会使用 Qualify 方法创建 IServiceQualification,然后在其下面创建一个名为 ServiceQualification 的抽象类,该类将具有一个名为 Qualify 的抽象方法,任何类型的限定符类都可以实现该方法。这使您可以定义限定符之间的常见行为(肯定会有一些),同时仍然在高级别上创建关注点分离。
接口有明确的用途,正确使用它们可以让您以任何您想要的方式实现,而无需您的代码需要该实现。因此,我们可以创建一个类似于以下内容的服务:
public bool ShouldQualify(IServiceQualification qualification)
Run Code Online (Sandbox Code Playgroud)
无论我们发送什么实现,这个方法都会起作用。一旦它发挥作用,你就永远不需要改变或修改它。此外,它还会直接导致错误。如果有人报告说按地址进行资格认证不起作用,您知道该去哪里查找。