我想知道我应该使用什么模式来实现一个处理文件上传、转换的类和一个处理图像大小调整等的类。
我在考虑实现(适配器模式)文件类和一个适配器类,其中ImageResize类可以使用适配器类中的函数
任何关于我应该使用哪种模式的建议都将不胜感激。
发布于 2012-11-27 02:27:44
一般说来,我使用Decorator pattern进行任何变换的组合。
在这里,你的"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(); 但这不是“解决方案”。这取决于你想要实现什么。也许你可以把它和工作流程结合起来。
https://stackoverflow.com/questions/12345544
复制相似问题