Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/361.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/design-patterns/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 中介软件模式_Java_Design Patterns - Fatal编程技术网

Java 中介软件模式

Java 中介软件模式,java,design-patterns,Java,Design Patterns,我想用Java编写一个中介软件,我想知道应该使用哪种设计模式来实现这一点。 注意:域中使用了一个中介软件,用于通过FTP收集文件并将其分发到不同的输出 谢谢。不要从寻找设计模式开始。首先明确需求,然后考虑满足需求所产生的目标和责任。当您改进您的对象设计时,您开始发现需要控制依赖关系和增加灵活性,此时您将看到设计模式 例如:假设您收到几种不同的数据格式,并且需要在中介中转换它们。然后您可能会有一些转换器类可以这样做,比如JSON->XML、CSV->XML、SpecialData->XML。您开始

我想用Java编写一个中介软件,我想知道应该使用哪种设计模式来实现这一点。 注意:域中使用了一个中介软件,用于通过FTP收集文件并将其分发到不同的输出


谢谢。

不要从寻找设计模式开始。首先明确需求,然后考虑满足需求所产生的目标和责任。当您改进您的对象设计时,您开始发现需要控制依赖关系和增加灵活性,此时您将看到设计模式


例如:假设您收到几种不同的数据格式,并且需要在中介中转换它们。然后您可能会有一些转换器类可以这样做,比如JSON->XML、CSV->XML、SpecialData->XML。您开始看到这些transformer类之间的共性以及如何创建实例。然后,可能会出现Facade或AbstractFactory等模式。

您需要对您的需求提供更多的见解。粒度是多少,一个文件还是多个文件;文件是否指向一个端点,部分还是全部?什么是时间的期望?它们的优先级都一样吗。如果无法访问终结点,该文件是否应排队或由最新的文件替换。您好,软件应能够按时间间隔收集文件,管理不同的收集点和分发点(一个输入多个输出),将文件保留在系统中,直到完全发送到目标,要在需要时重新发送文件。。。