总结而言,框架是库的有机整合。正是这种有机整合,从而确定了大体的设计模式和架构,使得我们按照规定的规则和架构来编写程序。
框架可以看作是一种特殊的库,它提供了一整套的解决方案,包括程序的结构、组织方式、设计思想等,还定义了各个组件之间的交互和协作方式。因此,框架往往比库更加庞大和复杂,具有更高的抽象层次和综合能力,可以帮助开发者快速搭建应用程序的基础结构。
相比之下,库只是一些具体功能模块的集合,将常用的代码封装成函数或类,供开发者调用。库不关心应用程序的整体结构和设计思路,而是专注于实现某个具体的功能。因此,库更加轻量级和灵活,开发者可以根据自己的需求选择合适的库来构建应用程序。
框架是一个完整的解决方案,而库则是单一功能的实现。
总结一下,库只是单一功能的实现,而框架将库有机组合,不仅更方便地实现了功能,还确定了大致的架构和开发模式。
如mybatis将xml和jdbc组合,确定了要把sql语句和数据库相关信息写在配置文件中这种架构和开发模式(来解决硬编码的问题)。又如springboot用注解确定了三层开发的架构和设计模式。