|
最近为小伙伴们录制了一段视频,希望能帮助Java初学者理清Java技术的发展脉络,以及学习线路。
视频链接地址http://ke.qq.com/course/3852562
视频的部分内容摘录下面介绍一下Java软件的架构演变过程。在Java语言一开始流行的时候,程序员完全依赖JDK所提供的类库来创建一个完整的项目。程序员通过GUI API创建用户界面,又通过JDBC API去访问数据库。
后来,随着软件规模越来越大,为了提高软件代码的可重用性和可维护性,提高软件开发效率,软件开始进行精细地分层,并且在各个层都出现了第三方提供的开源软件或商业软件,这些软件对基本的JDK API或者第三方的软件 API进行了封装,提供了功能更强大的接口。比如:- 在持久化层有Hibernate和MyBatis
- 在Web层有Struts和Spring MVC。
- Spring最初是在业务逻辑层管理Bean组件,这些Bean组件会完成和特定业务领域相关的业务逻辑。后来Spring不断扩展,就像八爪鱼一样,把触角延申到各个方向。最后,Spring能为软件应用的各个层提供完整统一的框架。
- 在Web层有Spring MVC框架,在持久化层有Spring Data API,在业务逻辑层,还出现了分布式的Spring Cloud框架。
再深入看Web层,随着Web项目的规模不断壮大,为了满足高并发访问量和吞吐量的需求,前端与后端又开始分离,前端运行在浏览器上,负责向用户呈现界面,以及与用户交互。后端运行在Web服务器上以及一些应用服务器上,负责处理业务逻辑,以及访问数据库。
前端主要由JavaScript等脚本程序构成,前端与后端紧密配合,能实现同步阻塞通信或者异步非阻塞通信。异步非阻塞通信是后来出现的一种通信模式,它可以支持更高更快的并发访问和吞吐量。
当前端脚本程序的规模越来越庞大时,也有一些针对前端的框架软件应运而生,比如Vue、React和Angular等。Vue和Spring一样,也具有海纳百川的胸怀,它们都会集成一些第三方的软件,来增强自己的功能,比如Vue会集成Axios插件,来实现与Web服务器的通信。
我最近刚写完了一本介绍Vue的书,《精通Vue.js:Web前端开发技术详解》,希望通过本书向大家呈现从后端到前端的完整技术体系。
孙卫琴
2021/9/22
程序猿的技术大观园:www.javathinker.net
|
|