一、问题提出
基于虚幻引擎开发数字孪生城市平台,需要定制开发开放的、持续进化的二次开发接口,我们可能面临的开发效率、系统稳定性的挑战需要我们认真考虑以下几个方面的问题:
1、如何避免底层对象、函数修改后开发人员花大量时间维护、反复修改接口映射逻辑
对于接口映射,最简单的逻辑就是通过具有“掌控一切”的“上帝之手”来控制所有的调用过程,这种实现的逻辑对于小型系统来说还是可以接受的,但对于相对较大的系统其灾难性是显而易见的。可以设想如果系统有成百上千个接口,映射到底层数百个对象,对这些映射进行维护无疑需要维护者具有“美女绣花”般的精细和耐心,而且一旦底层架构进行调整,整个逻辑几乎需要推倒重来,这显然不是一个良好的产品所应该采用的架构。
2、如何让外部接口相对高效率地映射到底层,尽可能降低开发人员处理工作量和出错概率
外部接口到底层的映射本质上是体力活,没有太高的技术含量,但是一不小心就容易出错,需要头脑十分清醒和细心,应尽可能简化映射规则和操作流程,降低开发人员维护映射的负担。同时,如果函数调用设计结构体、数组类型的参数的传递处理起来是比较费力并容易出错的,需要对这类结构进行自动化处理。
3、如何确保数据接口、传输流程的规范,避免开发过程随意性造成传输调用逻辑的混乱
由于接口映射技术性不是很强,开发人员在开发过程中往往容易产生一定的随意性,有时候为了减少开发时间往往会下意识走捷径,不考虑传输数据的完整性和多元化的应用场景,这很可能会造成系统在一些场景下可用,切换应用场景后就会出问题。作为平台化产品,为了降低此类风险,需要建立规则以及确保规则得以严格执行的机制。