课程简介
课程总计16小时,针对Angular新版本,案例以PrimeNG组件库为基础编写。
课程特色
1. 老师自身的工作经历丰富,在10年的时间里面,5年后端,5年前端。个人技术全面,熟悉Java相关的技术体系,如SSH、MyBatis、Ehcache、ELK、mysql等。在最近5年的时间里面负责过ZTEsoft两代前端框架的开发和维护,成效显著,全公司目前有数百个产品正在使用,包括几个合同金额超过一亿元人民币的项目。
2. 本课程的内容详实,PPT、实例代码、开源项目等都是长期积累优化的结果,一定能让参加课程的学员获得极大的提升。
3. 老师每讲完一个小节之后带领大家完成一个阶段性的小目标,超过20%的同学达成目标就进入下一个小节。一边讲一边动手,确保大家能最大程度地理解和掌握应该具备的技能。
4. 在课程的组织形式方面,推荐采用结对编程的方式,2个人一组。目的是促进同事之间的沟通与协作,同时也增强小组之间的竞争意识,让所有参与者保持全程紧张的状态。
课程收益
1. 掌握Angular框架的核心概念和设计思想;
2. 熟练使用Angular进行业务开发;
3. 基础好的同学可以达到封装UI Library的水平;
课程对象
1. 有AngularJS 1.x使用经验的开发者。
2. 有其它前端框架使用经验的开发者(如jQuery、ExtJS、Adobe Flex、React、Vue等均可)。
3. 有后端编程经验(如Java、.NET、PHP等均可),希望学习前端技术的开发者。
学员基础
至少能熟练使用一门编程语言(Java、C#、Python等均可),有前端基础效果更佳。
关键词
Angular进阶、PrimeNG使用、前端开发
课程大纲
时间 | 内容 | 案例实践与练习 |
上午 | 第1-1节:搭建开发环境 第1-2节:大型Angular项目的目录结构和编码规范约定(以一个案例项目为例子进行解释) 第2-1节:组件概述 第2-2节:把CSS预编译器改成SASS 第2-3节:模板 第2-4节:组件间通讯 第2-5节:生命周期钩子 第2-6节:动效 第2-7节:动态组件 第2-8节:ShadowDOM 第2-9节:内容投影 第2-10节:@ContentChild@ContentChildren 第2-11节:@ViewChild与@ViewChildren 第2-12节:与Polymer封装组件的方式简单对比 第2-13节:封装并发布你自己的组件库(这里会详细介绍PrimeNG组件库的用法) 第3-1节:指令简介 第3-2节:自定义指令 第3-3:直接在组件里面操作DOM | 第一章:动手搭建开发环境,angular/cli是一个非常强大的集成开发环境,这是Angular相比于其它框架非常有优势的地方。动手目标是带领大家搭建好开发环境,掌握创建项目、自动创建组件、用VS code直接调试TypeScript代码等日常开发必备的基本操作,熟练使用angular/cli可以帮助大家在开发过程中节省大量的时间。
第二章:每个小节都安排一个动手的任务,这一章的目标是全面细致地掌握Angular组件的各种用法。在动手环节中,会带领大家练习如何引入PrimeNG组件、如何基于PrimeNG组件开发自己的业务界面。
第三章:每个小节一个动手环节,这一章的目标是全面掌握指令的概念和写法。特别解释一下新版本里面“组件”和“指令”这两个概念的区别,这是很多开发者感到比较困惑的地方。指令是一个非常重要的概念,如果以后需要封装自己的组件库,指令是必须熟练掌握的内容。
|
下午 | 第4节:模块@NgModule 第5-1节:路由概述 第5-2节:路由基本用法 第5-3节:模块预加载 第5-4节:路由守卫 第5-5节:多重出口
| 第四章:练习模块基本写法、共享模块用法、动态载入模块、模块与全局单例这4个技术特性。Angular中“模块”的概念和ES6中的“模块”概念完全不同,Angular中的“模块”是一种“业务模块”的概念,而ES6中的“模块”更多是语法层面上的概念,我们通过上手写代码来深入理解这一点。
第五章:目前,无论用什么样的前端框架,路由都是一个不可或缺的模块。Angular的路由模块的功能极其强大,它支持无限嵌套、负责管理组件的生命周期、可以与angular/cli配合自动切分chunck、同时和可以支持前端权限控制等高级特性,我们会通过代码一个一个练习这些特性。 |
上午 | 第6-1节:表单快速上手 第6-2节:双向数据绑定 第6-3节:表单校验 第6-4节:模型驱动型表单 第6-5节:动态表单 第7节:服务 第8节:RxJS快速上手教程 第9节:国际化(i18n) | 第六章:练习表单的3种使用方式。
第七章:练习Service和依赖注入的用法。
第八章:上手练习Observable的各种创建方式、典型的operator的用法。(本章不仅仅讲述RxJS,同时会讲解RxJava 2.0、spring-reactor、RxAndroid的案例,因为在JS里面没有多线程的概念,而RxJava里面的多线程用法更加精彩。通过各种使用场景方便大家对比参照,更加深入地掌握“反应式编程”范式)。
第九章:练习国际化的写法、同时练习如何在封装组件的时候兼顾到国际化的问题。
第十章:动手搭建自动化测试环境、掌握Jasmine断言式语法以便编写测试用例。 |
下午 | 第10节:自动化测试(单元测试、集成测试、UAT) 第11节:Angular 打包与部署(打包成 WEB 应用、打包到 Docker 容器中、打包成 Electron 桌面应用) 第12节:Angular 应用的线上运维(包括:NodeJS平台的核心架构特征、NodeJS 平台的6个关键监控指标、与Promethus平台的对接) 第13节:一款基于Ionic的Hybrid应用实例讲解(移动开发) 第14节:用Angular开发PWA应用 |