1

我想知道我应该使用什么模式来实现一个处理文件上传、转换的类和一个处理图像大小调整等的类。

我正在考虑实现(适配器模式)文件类和一个适配器类,ImageResize 类可以使用适配器类中的函数

任何关于我应该使用哪种模式的建议都值得赞赏

4

1 回答 1

0

一般来说,我将装饰器模式用于任何转换组合。

装饰图案

在这里,您的“ConcreteComponent”可以是任何完整的过程(如上传),“Decorator”子类是任何单个转换,如“调整大小”、“转换”等。

因此,如果您想调整大小,然后剪辑图像,您可以执行以下操作:

process = new Clip(new Resize(new Upload(myImage)));
process->run();

或者

process = new Upload(myImage);  // concrete component
process = new Resize(process);  // decorator
process = new Clip(process);    // decorator
process->run();    

但这不是“THE”解决方案。这取决于您想要达到的目标。也许您可以将其与工作流程结合起来,或者在某种程度上......

于 2012-11-26T18:27:43.787 回答