工作两年了,趁着离职这天对这两年的嵌入式软件工程师的工作流程进行个复盘。
开发流程
设计先行
得到一个需求后,先进行设计,切记不要一上来就投入到代码写作当中,这样只有返工和写出来的shi一样的代码。先设计,拿出几个解决方案,然后选择最优的一个。自顶向下设计,由整体到细节。
选则好解决方案之后,将细节逻辑罗列出来,沥青其中的实现逻辑。
拿着逻辑图兑现代码
注意,其中埋一些打印调试信息,为后续验证调试提供线索。未卜先知,比如函数传参的显示,指针的判断,空指针野指针,某一步骤出错,留下错误打印。
未雨绸缪,对可能出现的bug进行预判,比如边界检查,空指针判断,并留下打印信息。
检查(语法/逻辑)
- 写完代码,不要着急投入验证代码是否奏效。 先检查一遍,语法有没有错误,避免多次编译。逻辑有没有错误,变量有没有用错(so 变量名不要取太相近)等等。
开发调试分离
代码实现与调试的关系,不要实现一段代码就验证一段,这样开发效率太低,这样如果调试遇到问题,严重阻碍工作进度,一次完成所有开发工作,然后一起验证,调试,开发调试分离,这样就需要在开发是埋调式log。