使用TypeScript进行Angular开发
使用TypeScript进行Angular开发
简介:
引言
《Angular Development with TypeScript》(第二版,2019年)由Yakov Fain和Anton Moiseev合著,是使用TypeScript语言在Angular框架上构建现代Web应用程序的最权威的实践指南之一。与许多浅显的教程不同,本书深入探讨了Angular的架构,从TypeScript基础开始,一直延伸到响应式编程(RxJS)、测试和性能优化等高级主题。作者是Java和Web技术领域公认的专家,这赋予了本书特别的严谨性和实用价值。
关于本书内容
本书涵盖了Angular应用程序开发的完整周期。它从TypeScript介绍(类型、类、装饰器、模块)开始,然后转向Angular基础:组件、模板、指令、服务和依赖注入。接下来讨论了路由、表单处理(响应式和模板驱动)、通过HTTP与服务器交互、使用RxJS和NgRx进行状态管理。专门的章节致力于测试(单元测试、使用TestBed的集成测试)、国际化、安全性和应用程序部署。本书以Angular CLI生态系统和最佳实践的概述结束。
这本书适合谁
本书面向已经具备JavaScript经验并且至少对Angular有基本了解的开发者。它既适合从AngularJS(1.x)迁移到现代版本的开发者,也适合希望系统化知识并学习高级技术的开发者。没有Web开发经验的初学者会感到困难——本书假设读者熟悉HTML、CSS、JavaScript和面向对象编程基础。
读者将学到什么
- 用于Angular的TypeScript:类型化、装饰器、泛型、async/await。
- 组件化方法:组件生命周期、通过Input/Output进行交互、内容投影。
- 指令和管道:创建自定义结构型和属性型指令、纯管道和非纯管道。
- 服务和依赖注入:注入器层次结构、提供者、工厂。
- 路由:路由守卫、模块懒加载、数据预加载。
- 表单:响应式表单(FormBuilder、验证器)、模板驱动表单。
- RxJS:Observable、Subject、操作符(map、filter、switchMap、combineLatest)、订阅管理。
- HTTP和API交互:HttpClient、拦截器、错误处理。
- 测试:Jasmine、Karma、TestBed、模拟和间谍。
- 优化:变更检测策略、OnPush、trackBy、懒加载。
优势
本书的主要优点是结构清晰且深入。每一章不仅包含理论,还包含可以直接运行的现成代码示例。作者非常注重解释“为什么”这样工作。例如,关于变更检测的部分是Angular文献中最好的之一。同样值得强调的是对TypeScript的重视:本书不仅使用它,还解释了如何在Angular上下文中正确应用该语言的特性。代码示例整洁,符合现代标准(ES2015+、Angular 8)。特别感谢关于测试的章节——它提供了真正的技能,而不仅仅是形式化的场景。
本书语言生动易懂,尽管需要仔细阅读。包含许多实用建议和常见错误的警告。每章末尾都有总结和自测问题。
推荐给谁
本书将对以下人群有用:
- 从其他框架(React、Vue)转向Angular的前端开发者。
- 已经熟悉Angular但希望加深TypeScript、RxJS和