开发主流程:
1. 熟悉系统的整体设计、使用的主要技术集以及运行部署;
2. 持续沟通并理清业务处理逻辑;
3. 开发/测试/持续改进的交替进行;
4. 细致周全地处理异常。
业务处理模式:
1. 读取请求与输入,检测权限与可访问性、检测参数有效性;
2. 业务处理逻辑、日志记录;
3. 格式化处理结果并输出。
业务处理中的代码模式:
1. 从数据库或缓存中读取资源记录并检测是否存在或是否合法;
2. 对底层系统发送指令, 做实际的业务处理;
3. 根据指令结果更新资源记录。
业务逻辑主要是理清楚: 需要访问和更新哪些资源记录,程序中状态的跳转与检测,发送指令。
难点:
1. 并发高吞吐量设计,事务处理,避免死锁;
2. 高可靠性设计, 在高负载下表现良好;
3. 错误处理全局规划,友好提示和便利排查问题;
关键点:
1. 对业务逻辑有整体而深入的理解, 才能设计出更好的系统架构来容纳业务的有效处理和扩展;
2. 探求更好的技术手段与思路视角,更高效地实现业务。
IMPORTANT NOTE:
1. 架构的一个作用就是简化业务逻辑处理模式,使开发者更专注于实现业务处理逻辑; 架构的另一个作用是选择适合的长远的技术集合,使得业务系统具备良好的可扩展性和持久发展;
2. 业务处理中的代码模式 1,2,3 通常是动态的, 交替进行的,这取决于实际业务的复杂性;这也是业务系统不易维护的重要原因之一;
3. 业务功能的正确性和可维护性通常取决于如何存取和更新资源记录;性能与可靠性取决于算法与系统整体设计;
4. 持续提升代码可读性,Keep Code Clean, 非常有益于系统的快速理解、维护和扩展。有的系统整体设计不错,但实际业务代码可读性不佳,理解起来费劲且浪费时间,容易出错。