主要观点:软件的理解需通过其与整体的关系,探讨了结构(structure)和位点(locus)这两个理解软件设计的主要工具,通过三个例子(model/view/controller、entities and hierarchy、what kind of queue?)进行说明。
关键信息:
- 软件具有凝聚力时各部分契合,形成无向图即结构,其中有一个位点,解释一个顶点可开始解释其他顶点。
- MVC web 应用有控制器、模型和视图三个主要组件,其结构描述模型与视图和控制器内容的关系,模型是位点。
- 结构内的顶点常包含子结构,如模型中的实体及其关系,改变位点可改变视角。
- 队列是一个有用的隐喻,使用队列隐喻时需考虑人们到达频率、等待时间等问题,在系统上下文中其含义清晰,队列隐喻也是一个位点。
重要细节: - Rails web 框架代码生成创建数据库表和相关文件,通过理解模型可理解结构。
- 实体关系图无向,内存数据有根,通常从用户开始,改变位点可改变对实体的关注点。
- 对于系统中添加队列的建议,若无上下文含义不明确,在系统上下文中其含义清晰,队列隐喻的理解受隐喻和系统共同影响。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。