完成产品项目后的阶段性感悟

本文分享了作者在工作中关于代码模块化的重要性,强调了代码的可移植性和可维护性。提倡将功能分解为模块以方便协作和问题定位,同时考虑代码的可移植性,通过抽象接口减少重复工作。对于可维护性,建议实现调试接口和日志打印以简化后期调试。此外,还讨论了产品售后问题的快速定位与解决,提出实现远程升级、关键日志保存和远程维护等辅助功能,以降低维护成本并提高客户体验。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

        在xxx工作的一年多时间,最大的感悟就是写代码时要有把功能模块化的思想,将大的功能分成一个个小模块,方便多人协同工作,也方便问题的查找。然后要好好考虑所写的代码的可移植性(最重要)和可维护性。

       可移植性:在实现某功能代码时,要好好考虑此功能代码是否可以移植到其它产品中,以后可减少大量可重复性的工作。把实现此功能代码所依附的函数接口提取出来(不同平台可能不一样,如延时函数、获取系统ticks、发送接收接口等)整合到一起,方便移植时更改代码;把外部需要用到的数据展示出来,方便外部引用。

        可维护性:在写软件代码时先把调试口实现,写代码时在重要位置写好打印数据,方便以后代码的调试和问题查找。还可借助工具,如CmBacktrace 工具,死机时可帮助定位问题的大致位置。

        最终产品卖到用户手中,所做的事情才真正产生价值。作为一个产品,产品的售后问题也是非常重要的,要多考虑产品在使用过程中问题的快速定位及解决,不断优化产品,这样才能在同质化的产品中建立优势。还需考虑在解决问题的过程中客户是否能做一些容易的操作来帮助解决问题。根据这些问题,产品需要实现如实现远程升级(减少人力成本)、关键日志保存到flash(方便日后定位问题)、实现远程维护(远程获取产品信息、产品本地记录的数据)这些基本辅助功能,这些在有网络情况下可远程操作来定位问题,解决问题及更新程序,减少人员到现场的维护成本。当然也要考虑没网络情况下怎么定位问题,如用预留的调试口来获取日志信息

在做产品开发时,可以参考这个经典的v模型的步骤

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值