为什么在策略模式中需要上下文类?
例如,我想使用 zip 或 rar 压缩来压缩文件。我们可以使用带有以下文件的策略模式来解决这个问题。
1.ICompressionStrategy...Its interface
2.ZipCompressionStrategy ..implements IcompressionStrategy
3.RarCompressionStrategy ..implements IcompressionStrategy
4.CompressionContext..Inject IcompressionStrategy
5.Client..Inject CompressionContext
在上述情况下,为什么我们需要 CompressionContext 类?为什么我不能将 IcompressionStrategy 注入 Client 类?
在上述场景中使用 CompressionContext 类有什么好处?我可以避免吗?
这是我正在谈论的示例