繁体   English   中英

命令模式在这里适用吗?

[英]Is Command Pattern Applicable here?

我有一个值对象(VO)。 字段/属性之一是保存字符串值的'sourceKey'。

例如:
字符串sourceKey1 =“ cust12 / proj1 / site1 / images / somefile.JPG”
字符串sourceKey2 =“ cust12 / area1 / site1 / images / somefile.JPG”

现在,我需要对sourceKey进行某种转换,并通过先用'/'分隔源密钥,然后建立一个目标密钥,然后:
-通过致电客户服务来替换cust12-通过id 12查找客户,并在dest键中用客户名称替换cust12。
-与替换proj1类似-调用项目服务,用ID 1查找项目,然后用项目名称替换proj1。
- 等等..

因此,为了以一种干净的方式实现此目的,我想到了编写命令-每个命令都通过调用适当的服务(customerService,projectService等)来获取对象。 然后在客户端级别,只需解析sourceString并构建要执行的命令列表,然后最后使用命令列表构建目标键。

我在想正确的方向吗? 命令模式是执行此操作的clean / OO方法吗?

不,命令模式不适合此问题。 从OOP的角度来看,我将首先将源密钥建模为Object而不是String ,以避免使用String 类型的编程。

看起来SourceKey对象将依赖于CustomerServiceProjectService ,并且将包含五个字段,可以根据需要将其组合为String 换句话说,尝试将String转换逻辑封装到其自己的Object

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM