如何理解框架和架构?

简单的来讲:

框架:是用于构建软件应用程序的工具或一组工具和实践,它包括了预定义的功能和结构,旨在解决特定的问题,从而更有效的用于开发代码。因此框架是集合了【规范】【工具】【最佳实践】等相关特点的一套解决方案,这个方案是以一个工具的形式展现的。

架构:是指软件系统的整体设计,是一种思路的体现,包括但不限于组成部分、这些部分之间的关系,以及相关的设计原则,展开来讲就是【模块如何划分】【如何通信】【状态流转】【错误处理】【性能优化】等具体的实施方式。通过这种方式,为了让我们的系统能够能够具备【高可靠性】【易维护性】【可扩展性】【良好的性能】等优点。

同时架构是需要权衡利弊,是现有资源约束下的最合理决策,最终明确的系统骨架,包括子系统、模块、组件之间如何协作联系,约束规范,指导原则。

系统性思考的合理决策:比如技术选型、解决实施方案(包括执行目标计划)、成本评估、性价比评估等等。

结构:明确系统有哪些构件组成

连接:系统协作关系:各个组成部分如何协作来实现业务请求。

规范:约束规则和指导原则,保证系统有序、高效、稳定运行、包括规范,上线流程等