第七章 从模块到生态:组合的力量与代价
第七章 从模块到生态:组合的力量与代价 假设你要开发一个能够预测设备故障的软件系统。 你可能不需要从头编写所有功能。 传感器负责采集数据,通信组件负责传输,数据库保存记录,分析工具处理时间序列,机器学习框架训练模型,界面组件展示结果。 这些能力可能来自不同公司、不同开源社区和不同年代。它们的开发者未必认识彼此,也未必预见过你的具体任务。 但你仍然有机会把它们组织成一个新系统。 这是现代技术令人惊讶的地方: 创新不总是从发明新部件开始,也可以从重新组织已有能力开始。 不过,真正动手之后,困难很快就会出现。 传感器的采样频率不一致,时间戳来自不同的时钟;数据库保存的数据格式符合要求,却缺少模型需要的运行条件;分析组件在测试环境里很快,部……