给客户做API移植心得总结

Posted by LuckXiang on April 13, 2017

0x00前言

最近完成了一个项目,客户有自己的应用方案,需要移植到我们的API上来,目前完成得差不多了,略有心得,总结一下。

0x01分析

客户已经提供了一套接口,因此,我要做的事情一是理解客户的接口业务,二是理解我们的API实现,最终在中间层完成两者的对接,具体工作分成三部分。搭建编译环境,搭建运行环境,移植并调试。

0x02搭建编译环境

这一步需要自己写makefile,把整个工程分成四部分,客户的方案库,API接口层,我们的底层库,测试代码。根据这个组织好目录结构,编写makefile。获得一个可以编译生成可执行文件的环境。

0x03搭建运行环境

嵌入式的运行环境搭建都比较麻烦,这里花了很大功夫,准备好一块硬件都正常的开发板,搭建gdb调试环境,配置相关参数,初始化好执行应用程序需要的软硬件环境。

0x04移植并调试

虽然搭建编译环境和运行环境也是评估项目时间节点的一部分,可是以上两部分有很多不可控的因素,所以我的项目时间评估是从这里开始的,如果之前自己做过完整的移植开发,那么可以根据经验来评估工作量和时间,如果第一次做,最好请有经验的人来给评估一下。工作量确定好了以后便开始按计划移植接口,完成一个模块,一定要做模块测试,测试通过再去做下一个模块,原则上是先开发主要模块,后开发次要模块,在有依赖的模块之间,要先开发被依赖的模块,根据一条主线逐步往前推进。最终完成整个项目。

0x05总结

  • 兵马未动,粮草先行。写代码之前,先考虑测试。
  • 沿着一条主线逐步推进,中间可能有一些小分支,但是不能影响主线的进度。
  • 基础环境要准备好,不要把环境问题留在开发过程中去解决。