最近在做一个项目,用到了不少新技术。整体体验下来,感觉开发效率提升了不少,但也踩了一些坑。这里简单总结一下,希望对大家有所帮助。
架构设计没有银弹,不同的业务场景需要不同的解决方案。不要盲目追求新技术,也不要固守旧方案。适合自己的才是最好的。
关于代码审查,我认为这是一项非常有价值的实践。通过 review 别人的代码,可以学到很多新的思路和技巧;通过被 review,可以发现自己忽略的问题。
部署运维这块,容器化已经是标配了。Docker + Kubernetes 的组合,让应用的部署、扩容、回滚都变得简单。但也增加了学习成本。
安全性是任何系统都不能忽视的问题。SQL 注入、XSS、CSRF,这些常见的攻击手段都要做好防护。输入验证、输出转义、权限控制,缺一不可。
关于缓存,最忌讳的就是缓存不一致。读写策略、过期时间、缓存穿透、缓存雪崩,这些问题都要提前考虑好应对方案。
关于时间管理,程序员要学会区分重要和紧急。不要整天忙于救火,而忽略了真正重要的事情,比如学习新技术、优化系统架构、写文档。