一、写作缘由
此次字节青训营第六期课程和项目开发已近为期,借这个机会把自己在项目中遇到的问题和开发中的一些反思记录一下,避免以后再犯类似的问题。
二、项目开发技术反思
本次我负责项目后端的开发,主要使用的技术是数据结构中图的构建、图深度优先遍历和图广度优先遍历。从这次开发中感觉自己对图的应用不熟练,只是停留在考试的层次,一旦结合具体项目,用起来就比较吃力,待这次青训营结束后,要综合复习巩固一下。
本次要求使用typescript进行开发,对ts类型的使用不熟练,还是按照javascript语法思维进行编码,一遇到类型错误就使用any、object和as,没有反思是不是自己类型定义的时候有问题。后面要多看一些typescript优秀开源项目的源码,学习一下如何正确使用typescript。
本次要求将项目封装成一个命令行工具,在封装后,没有考虑到当本项目被当作依赖安装时的路径引用问题,当通过npm install *.git下载依赖后,无法使用命令行工具。以后开发命令行工具时最好不要使用固定路径,巧妙使用process.cwd()、__dirname和__filename。
三、项目开发过程反思
本次开发时没有按照一般的软件开发过程进行,心里面还没有一个清晰的思路时,就急急忙忙地开发,导致开发时磕磕绊绊,降低了开发效率,浪费了开发时间。
本次开发时,每当写一个功能模块时,没有马上进行简单的测试,测试一下代码是否能跑通,导致整个项目运行的时候到处是问题,修改bug浪费了很多时间。