前言
本篇文章给你们分享的内容是全栈技能修炼:使用Angular和Spring Boot打造全栈应用的技术文档。前端
全栈通过多年的发展,技术体系变得很是庞杂。看看层出不穷的技术知识图就知道了,可是你是否曾注意到不少一样的思想被处处套用?不只在同一个技术体系内如此,跨体系的套用其实更加明显。程序员
好比RxJS的事件流、后端的MessageQueue 与如今大热的Serverless架构在深层思想上有着千丝万缕的联系。有了这种眼光,你不只能够更轻松地跨领域学习,更重要的是,你会拥有极为可贵的预见力。而技术预见力,能让你领先别人三年。哪怕半路在树下睡一觉都不用怕。编程
固然,若是你是仍有着雄心壮志的青年,应该会更明白预见力的价值,有朝一日,你的预见力甚至不会再局限于技术。后端
与一般的理解不一样,在我看来,全栈,不是特定技术的组合,而是一种思惟方式,一种眼界。不知道你们怎么看?跨域
全栈,就是技术的任督二脉。它把大量的技术思想贯穿在先后端这两条主线中。它们既有区别,又有联系。既不会抽象到让你找不到具体的例子去理解这些思想,也不会狭隘到让你只知其然而不知其因此然 。安全
总之,不要囿于门户之见。没有前端工程师,也没有后端工程师,一个有技术追求的程序员,首先要是一个工程师。工程师的思惟与热忱,才是你最宝贵的财富。服务器
本文将从目录、主要内容和总结三部分给你们系统的进行介绍,但愿你们可以学习到新的技术知识和新的架构思惟,而且可以灵活运用,但愿你们可以喜欢!!前端工程师
目录
主要内容
本文内容将用9章的内容给你们进行介绍:架构
第1章技术的选型和环境搭建;主要采用的技术选型原则:成熟的框架、活跃的社区、工程化的支持、采用统一 编程思想、快速开发的支持!框架
第2章使用Angular快速构造前端原型;本章会从Angular 的核心概念出发,2.1 节以一系列小例子阐释这些概念的意义和使用方法。有Angular基础的读者能够跳过或者摘选本身感兴趣的内容看。在2.2节中,咱们会一块儿来认识Angular的官方UI组件库Angular Material,这是一套遵循谷歌Material Design风格的组件库。使用它的好处在于能够在组件标准化、动画、兼容性方面节省很大精力,即便你不熟悉CSS也能够作出很好看的UI效果。还会一块儿学习几个较常见的组件,固然只是最初的简单框架和页面,使用的是Angular Material组件库和Angular FlexLayout 布局库。2.3 节咱们会一块儿学习Angular Material的主题支持,学会如何定制化主题。2.4 节使用容器来构建应用,咱们不会专门去讲关于容器的知识,但在书中须要使用容器的地方会有相应说明。使用容器的缘由是它可让整个开发部署的流程更加自动化,提升生产效率。
第3章何谓后端;Spring Boot是Spring 框架的“脚手架”了,它能够帮你快速搭建、发布一个Spring应用。官网列出了Spring Boot的几个主要目标。
●提供一种快速和普遍适用的Spring 开发体验。
●开箱即用却又能够适应各类变化。
●提供一系列开发中经常使用的“非功能性”的特性(好比嵌入式服务器、安全、度量、自检及外部配置等)。
●不生成任何代码,不须要XML配置。
本文的后端服务主要使用SpringBoot进行搭建。
第4章登陆鉴权功能的构建;其实,咱们彻底可使用普通的CSS和HTML去构建一个Angular应用,而使用相似Angular Material 这种UI框架的好处在于,能够利用比较成型的UI组件快速开发,而不是花费精力重复制造轮子。因此在4.1节咱们会继续学习几个Angular Material的组件,其中包括表单控件FormField和MatInput;布局控件GridList和Stepper;以及自定义表单控件的开发,咱们会开发两个表单控件,图片选择器ImagePicker和验证手机号控件VerifyMobile。
本章要学习的不只仅是Angular Material的一些知识,还要学习Angular的模块化、服务层的开发、响应式编程的概念,以及响应式编程框架RxJS,最后还会应用以上技巧打造一个较复杂的交互应用一一忘记密码。
第5章构建后端API;第3章只是对Spring Boot中的强大功能进行了一个大概介绍,本章咱们会就登陆鉴权API进行详细的讨论。
- 5.1 HyperMedia API与传统API
- 5.2 Spring Data中的查询
- 5.3 Controller的构建
- 5.4构建安全的API接口
- 5.5跨域和API文档
第6章前端和API的配合;前面的章节中,咱们是前端和后端分开介绍的,但在实际应用中,这二者是要配合起来的。后端做为内容资源的提供者,而前端做为这些资源的消费者,将资源以须要的形式展示给使用者,也就是咱们的最终用户。
- 6.1响应式的HTTP API处理
- 6.2 RxJs进阶
- 6.3 HTTP拦截
- 6.4 Angular路由
- 6.5安全守卫
第7章后端不仅是API;先后端分离的是后端对于视图的渲染和路由功能被剥离给了前端,彷佛后端的工做就只剩下了构建CRUD这种API了,事实真的是这样吗?后端处理工做其实远远不止是API,除非你想作的仅仅是为了配合前端搭建的一个“脚手架”。
剥离前端后,后端大部分的工做是真的比较“后端”了,由于实现的功能是没有用户界面的,好比性能、安全、搜索、数据的审计历史等。本章就来看看后端的这些功能,须要说明的是,这些功能是很是专业的,须要深刻学习的,这里咱们只是带你们一块儿开个头, 相关的细节须要咱们一块儿在从此的工做中不断学习和体会。
第8章前端的工程化;今天的前端已经远远不是用一些简单HTML、CSS和JavaScript能够应对的了,愈来愈多的功能要求在前端实现,能够说前端的复杂度已经要求和Android 或iOs同等量级(若是不是更强)的生态支持了。因此咱们看到了前端从JQuery这种类库级别的支持发展到相似Knockout.js的双向绑定机制,直到今天以Angular、 React 和Vue 为表明的各类框架级别的生态。
整体来看,目前的三大主流框架均具有如下特色。
●在开发模型上更接近传统的客户端编程,不少有客户端、移动端或后端开发经验的读者会感到使用这些框架时和本身以往的开发习惯很是相似。
.大量的函数式编程的应用使得前端的开发又区别于传统开发,便可以快速而漂亮地实现业务逻辑,但这确实也提升了门槛。固然这个函数式编程并非必需要作的,但若是掌握了,就能够更漂亮、简捷地写出“健壮”的代码逻辑。
●内建或社区提供的UI、路由、状态管理等生态支持。
其中,Angular 在几大框架中属于“大而全”的风格,好处就是官方提供了包括CLI、路由、动画、服务端渲染、UI等支持,是选择恐惧症患者的福音。在风格上很是相似于Java、.Net, 若是你有相关语言背景,那么入门是极快的。但有利就有弊,这也使得没有面向对象经验的读者会以为Angular 比其余框架要难。从工程支持上来讲,Angular 更适合大型团队作大型工程,而Vue适合更轻量级的快速开发。
第9章Spring Cloud打造微服务;Spring Cloud是一个基于Spring Boot实现的云应用开发环境,它为基于Java的云应用开发中涉及的配置管理、服务发现、断路器、智能路由、微代理、控制总线、全局锁、决策竞选、分布式会话和集群状态管理等操做提供了一种简单的开发环境和模式。
Spring Cloud包含了多个子项目(针对分布式系统中涉及的多个不一样开源产品),好比:Spring CloudConfig、Spring Cloud Netlix (包括Eureka、 Hystrix、 Zuul 等Nttlix 全家桶)、Spring Cloud Gateway、Spring Cloud AWS、Spring Cloud Security、 Spring Cloud Commons、Spring Cloud Zookeeper、Spring Cloud CLI等项目。
这份【全栈技能修炼使用Angular和SpringBoot打造全栈应用】共有526页,须要完整版的朋友,能够转发此文关注小编,私信小编【技术】来获取!!
大牛专家力荐
本文覆盖了前、后端的技术,前端用Angular, 后端基于最新的Spring Boot技术栈。
读者读完这本文能够在单兵做战的状况下开发出完整的业务系统,这也是我一直在作的事情。
虽然如今的技术分工愈来愈细,可是从我的职业发展的角度出发,我仍是强烈建议朋友们作一个真正的全栈开发者。
但愿本文可以帮助到你们的学习,也但愿你们可以把里面的技术所有掌握到本身手里面,而且可以灵活运用,不断地提高本身的技术广度和深度,让本身变得更加有价值!!
愿你走出半生,归来还是少年!
奋斗,成就更好的本身!