首页 » 程序员必读之软件架构 » 程序员必读之软件架构全文在线阅读

《程序员必读之软件架构》代码未描绘的设计意图

关灯直达底部

进一步深入代码会帮助验证你最初的假设正确与否,但也可能留给你一大堆问题。也许你在较高层次明白系统做的事情,但不明白像下面这样的事。

  • 软件系统如何融入已有的系统形态;
  • 为什么会选择正在使用的技术;
  • 软件系统的整体结构;
  • 各个组件在运行时部署在哪里,如何相互沟通;
  • Web层如何“知道”在哪里找到中间层;
  • 日志/配置/错误的处理/其他采用了什么方法,在代码库中是否一致;
  • 代码库中是否使用了通用的模式和原则;
  • 如何添加新功能,在哪里添加;
  • 栈的安全性是如何实现的;
  • 如何实现可伸缩性;
  • 与其他系统的接口如何工作;
  • 其他。

我曾被要求评审和参与开发没有文档的系统。你当然可以从代码的角度评估大部分问题的答案,但这会很繁重。阅读代码的作用始终有限,但某些时候你可能需要向团队的其他人请教一些问题。如果没有问对问题,你就得不到正确的答案:你不知道你未知的。