0、状态机思维
考虑问题要全面,空与非空、成功与失败等,使用东西的生命周期要考虑清楚。
1、环状编程
环状编程思维,主要体现在资源的使用上,要形成一个环状——自0开始,亦终至0。中间阶段则是在使用分配的资源,最终要将资源回收,不能造成溢出或者资源的多余。
2、极限
在编写函数的时候,要考虑一些极限个数据的情况。比如排序,要考虑入参为0个数据的情况。诸如此类,要注意总结。
3、定制树
如果某个框架部分满足你的需求,而你有没有更好的选择,此时就可以从官方的框架树上剖析,通过修改源码来满足需求。根据方法树的层次,每深入一层,你能做的修改就越多。
4、工程化和文档化
当项目比较大(5000行以上)的时候,先做好程序的整体规划,包括模块划分、接口划分,最好是画出时序图、状态转换图。如若不然,在后期修改和维护时,就容易出现搞不清楚关联状况的情况,增大修改维护的难度,易出现漏修改的情况。
5、日志分级
每打印一行日志,都应考虑本条日志是属于系统运行日志还是bug调试日志,做好分类。当日志打印的不合理时,既不能帮助排除bug,也不能有效地辅助查看系统的运行状况。当无效日志过多时还会让日志变得特别大,占用服务器存储空间。
6、栅格化数据流
任何一个代码模块,都是数据流的处理单元。依据数据流转的思路,来设计方法和代码模块,以达到良好的模块化和重用。
7、公共模块团队确认
当模块可能是一些可重用模块时,要跟团队伙伴确认。如果是公共方法,就要在写好后同频给团队人员,以达到减少重复工作,提高重用的目的。
8、关于方法应该写在哪个Service中
可以根据返回值和入参来决定。