项目开发中需要考虑的问题

先列个大纲,将一个软件工程师需要考虑的点都列出来:

如何写设计文档?格式是什么,要写哪些内容?如何做文档的版本管理?

SQL如何进行版本管理

代码如何进行版本管理

统一异常处理

配置文件外部化

如何做分页

如何热替换提高效率

如何进行接口设计?如何设计restful接口?如何使用swagger?

如何写线程安全的代码?

如何控制事务?

如何自动生成代码?使用模板创建项目?

如何设计权限控制?单点登录?

如何输出日志?管理日志?

如何使用缓存?解决应用服务器瓶颈? 如何用好缓存?

如何使用集群?负载均衡?解决应用服务器瓶颈? 

如何使用分布式消息队列和分布式服务框架对模块化后的分布式项目模块进行聚合?

如何用好消息队列? 

如何利用redis设计功能?

如何利用zookeeper设计功能?

如何利用Spring Boot设计通用的功能?

如何设计表结构?如何分库分表?解决数据库瓶颈

如何集成搜索?

如何对项目进行分割分层,如何模块化?

如何规划项目架构?使其具有高可用、高性能、伸缩性、扩展性、安全?

如何持续集成、自动发布?

如何监控运行状况?如何应对宕机等紧急情况?如何在线排查事故?如何快速恢复?

猜你喜欢

转载自www.cnblogs.com/wozixiaoyao/p/11601430.html