软件框架(software framework)的标准定义:通常指的是为了实现某个业界标准或完成特定基本任务的软件组件规范,也指为了实现某个软件组件规范时,提供规范所要求之基础功能的软件产品。
框架(Framework) 通常指的是一种抽象的形式,它提供了一个具有通用功能的软件或者代码,这些代码或功能可以由使用者自行进行更改,从而开发出一个服务于“特定”应用的软件。它是对部分或者整个系统的可重用设计,往往表现为一组抽象构件以及构件实例间交互的方法,框架可以理解为被应用开发者定制的应用骨架。
软件框架本质上是一种通用的、可复用的软件环境(也就是别人写的代码),它提供了特定的功能,用以作为一个更大的软件平台的一部分,以达到促进软件应用、产品和解决方案的开发工作。也就是说,框架本身一般是不完整的,不可以解决特定的问题;框架就是天生为扩展而设计的;框架可以为后序扩展的组件提供很多辅助性、支撑性的方便易用的实用工具(即通常配套有一些帮助解决某类问题的库或工具)。
简而言之,框架其实就是某种应用的半成品,就是一组组件,供你选用,来完成属于你自己的系统。再简单一点说,就是别人帮你搭建好了一个舞台,你来做表演。一个好的框架往往是十分成熟的,并不断地进行着迭代升级。
常见的UI框架:Bootstrap、jQuery UI、Pure CSS、Semantic UI、Ace Admin、BootMetro、Layui、Vue等等。
常见的Java后端框架:Mybatis、Spring、SpringMVC、SpringBoot、SpringDataJPA、Shiro、Lucene、ElasticSearch、SpringCloud等等。
框架所要解决的最重要的一个问题其实是技术的整合问题,在J2EE的框架中,有着各种各样的技术,不同的软件企业需要从J2EE中选择不同的技术,这就使得软件企业最终的应用依赖于这些技术,技术自身的复杂性和技术的风险将会直接对应用造成巨大的冲击。而应用时软件企业的核心,是竞争力的关键所在,因此应该将应用自身的设计和具体的实现技术解耦。这样,软件企业的研发将集中在应用的设计上,而不是具体的技术实现,技术实现是应用的底层支撑,它不应该直接对应用产生影响。
框架的重要性在于它实现了部分功能,并且能够很好的将底层应用平台和高层业务逻辑进行了缓和。为了实现软件工程中的“高内聚、低耦合”。把问题划分开来各个解决,易于控制,易于延展,易于分配资源。我们常见的MVC软件设计思想就很好地体现了分层的思想。
如果你想要从事Java后端开发的话,对于框架的学习便是一门必修课,那么从何入门框架呢?
Mybatis是入门框架的最好选择。首先,他其实是将JDBC中重复书写的代码进行了整合,通过XML文件的形式实现了十分简洁的数据库操作服务。其次,Mybatis相对来说学起来是非常简单的,对初学者来说还是十分友好的,能让你更好的理解“框架”的概念,为以后学习Spring等框架打下基础!
免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删