【问题标题】:.net hide implementation and provide interface [closed].net 隐藏实现并提供接口
【发布时间】:2014-08-06 03:29:25
【问题描述】:

我正在与几位为我开发 .net 组件的开发人员合作。

我管理许可机制并希望隐藏实施。

我只想为他们提供接口,例如methodIsLicenseValid(),因此他们必须在代码中使用它但无法访问实现。

我应该使用哪种模式或技术来实现该目标?

【问题讨论】:

  • 可能是依赖注入,这样您就可以向开发人员提供接口,并且您的实现可以在单独的库中并在运行时在绑定中解析。
  • DI 是否存在已知的一些性能问题?我是否必须使用统一来通过 app.config 文件进行设置?

标签: c# .net interface


【解决方案1】:

您应该使用Web Service 来公开methodIsLicenseValid(),并让您的开发人员在必要时调用它。

这无论如何都适合您的生产环境,并且还允许您更改 methodIsLicenseValid() 的实现,而不会给开发人员带来麻烦,而不是向他们提供库/dll

【讨论】:

  • 就像注释一样,它不一定是Web服务,任何服务,无论通信机制如何。例如,由于性能更好,TCP WCF 服务可能更适合内部场景。
  • 我想知道我的最终客户是否会喜欢他需要在他的服务器上安装 F2F 服务,因为我正在寻找一种离线许可机制。
  • 在这种情况下,您可能不得不提供 lib/dll,但您客户的环境是否未连接到互联网?
  • 我想在安装时进行在线许可证验证,并在本地加密许可证。之后,每次使用应用程序时,都应检查许可证是否有效。我想通过混淆向我的客户隐藏该检查的实现,同时也向我的开发人员隐藏它
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-10-30
  • 2011-06-29
  • 1970-01-01
  • 2018-09-15
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多