系统重构后,对项目定制开发的兼容性问题

公司自实施产品线战略以来,基本推翻了全部旧有业务模块。后续以标准产品+二次开发的模式进行项目开发。但在涉及到一些旧有系统二期、三期升级改造过程中。不可避免的需要解决旧有系统的客户定制化开发兼容性问题。也就是旧有系统定制开发的模块不能丢弃。重新开发从工程进度上又不允许。因此,需要把旧有系统的某几个定制开发模块嫁接到重构后的产品项目上。

面对该需求,本人参考了日志slf4j的兼容包log4j-over-slf4j的做法。在重构系统和旧系统定制模块之间开了一个中间适配包。用来兼容重构系统和旧有模块。如下图:

a

在重构系统中,因为涉及到对表结构优化,代码优化,业务优化等方法。不能满足旧有系统的依赖。因此,在乱配包中,把旧有系统的外部依赖都用原类名、原方法名、原参数、原包名写个空壳子。用重构系统中的新组件做实现。旧有系统定制模块在消除编译问题的同时,也适配了重构系统的相关方法、接口等。

如下图所示代码:

旧有定制模块获取登录用户id在适配包中的写法:

java 复制代码
    // 调用了旧系统中的UserUtils.getLoginUserId()方法。
	public class UserUtils {
 		public static String getLoginUserId() {
 		    // 实际调用的是重构系统中的获取登录用户方法
        	return ZYUserHelper.getLoginAreaUserId();
        }
    }

通过该方案的实施,大大节省了旧系统改造升级的开发周期。在公司其他同场景的其他项目中,得到了广泛的推广。取得了良好的经济效益。

相关推荐
秋邱1 天前
智启未来:AGI 教育融合 × 跨平台联盟 × 个性化空间,重构教育 AI 新范式开篇:一场 “教育 ×AI” 的范式革命
人工智能·python·重构·推荐算法·agi
AI产品测评官3 天前
2025年招聘系统后端重构:为什么我们放弃了传统SaaS,转向了LLM+RPA智能体?
重构·rpa
司铭鸿4 天前
祖先关系的数学重构:从家谱到算法的思维跃迁
开发语言·数据结构·人工智能·算法·重构·c#·哈希算法
Ace_31750887764 天前
微店商品详情接口深度挖掘:从多接口联动到数据全息重构
大数据·python·重构
Tezign_space6 天前
技术破局:人机协作如何重构内容生产流水线,实现成本与效能的范式转移
人工智能·重构·降本增效·人机协作·内容数字化·内容科技·内容+人工智能
数字孪生家族7 天前
视频孪生与空间智能:重构数字时空认知,定义智能决策新范式
人工智能·重构·空间智能·视频孪生与空间智能
科技测评-阿博7 天前
基于企业知识图谱的B2B金融获客模型:从“流量思维”到“数据工程”的重构
金融·重构·知识图谱
qqxhb8 天前
零基础MCP——第5章编程实战基础(网页、数据分析、调试与重构)
重构·数据挖掘·数据分析·多模态·mcp
老蒋新思维8 天前
创客匠人 2025 高峰论谈(11.22-25):AI 智能体重构创始人 IP 打造与知识变现的管理逻辑
大数据·网络·人工智能·网络协议·tcp/ip·重构·知识付费
"YOUDIG"9 天前
AI重构虚拟都市美学:探索GTA风格照片生成网站的创意狂想与技术内核
人工智能·重构