主要观点:工程是社会科学,工程决策需考虑情境,很多工程方法并非总是有效。
关键信息:
- Martin_Casado 发推,作者回复关于一些工程方法为何不常奏效的列表。
- 列举了“让我们只是……”的 8 种情况,如让东西可插拔、添加 API 等,说明这些方法通常难以达到预期效果。
- 以多个实际例子和经验阐述每种情况的问题,如 Windows NT 的多余抽象、API 未被使用等。
重要细节: - 提到几乎没有东西能真正可插拔,现代软件最可插拔组件可能是设备驱动。
- 成为 API 提供者需有特定 mindset 和技能,提供 API 不意味着有人会使用。
- 抽象有时过早会导致问题,后期添加抽象难维护等。
- 异步在数据层外处理易出 bug。
- 系统从开始就应考虑访问控制,否则后期会有问题。
- 同步数据是难题,跨平台也存在诸多问题,如与底层平台分歧等。
- “启用逃到原生”的方法大多也不奏效,会打乱框架状态。
- 强调要以第一原则解决问题,避免采用易失败的软件模式。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。