首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >设计模式-映射具有复杂逻辑的字段

设计模式-映射具有复杂逻辑的字段
EN

Stack Overflow用户
提问于 2015-12-13 05:14:07
回答 1查看 118关注 0票数 0

当将一个对象从一个系统传输到另一个系统时,两者对相同概念的表示完全不同,对此有什么通用的解决方案吗?

在我的特定案例中,我从电子商务web应用程序中获取订单,并将其移动到仓库/crm系统中。

订单包含来自web应用程序订单、客户、订单项目、发货地址中不同来源模型的数据。在某些情况下,需要完成简单的字段名更改。但在其他情况下,在移动字段时会有一些更复杂的转换和逻辑。例如,必须根据税收百分比和发货国家/地区映射增值税/税码。

EN

回答 1

Stack Overflow用户

发布于 2015-12-13 09:06:18

一般来说,

  • facade用于简化或统一更复杂/令人费解的interface
  • Adapter用于将给定接口转换为客户端期望的接口。

听起来你会做很多调整。但是,您可能有一个或多个facades来促进音译过程。

我处理这类事情的经验不是字面上对模式的坚持,而是适配器式的。模式首先是概念。

我做了一些“如意算盘”的设计--新的课程专注于所需的任务。这些处理类对数据对象使用通用的"typeX“。一种最小公分母的类。然后从接收端的传入记录和相关记录创建这些"typeX“对象。许多良好的设计,可测试性,代码维护质量来自于使用单个DataType的新鲜设计。

在本质上,"typeX“对象必须以其原始的本机类型进行处理,但这往往是”在末尾“隔离的。尽管如此,在处理匹配、查找、排序等过程中,"typeX“对象大大简化了除最必要的繁琐工作之外的所有工作。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34245060

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档