Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我想用 Java 编写一个中介软件,我想知道我应该使用哪种设计模式来做到这一点。注意:在电信领域使用中介软件通过 FTP 收集和分发文件到不同的输出。
谢谢你。
不要从寻找设计模式开始。首先让需求非常清晰,然后考虑满足需求所产生的对象和职责。随着您改进对象设计,您开始发现需要控制依赖关系并增加灵活性,此时您将看到设计模式。
例如:假设您收到几种不同的数据格式并且需要在中介中转换它们。然后你可能有一些转换器类可以说 JSON->XML、CSV->XML、SpecialData->XML。您开始看到这些转换器类之间的共性以及实例的创建方式。然后可能会出现诸如 Facade 或 AbstractFactory 之类的模式。