书籍内容
Angular是构建动态JavaScript应用程序的领先框架,《Angular高级编程(第3版)》将帮助你高效使用Angular 7,充分发挥这个框架的潜力!《Angular 高级编程(第3版)》开篇讲解MVC模式及其优势,然后浓墨重彩地描述如何在项目中使用Angular;从基础要点讲起,循序渐进地引导你构建高级、复杂的功能,期间深入探讨相关的知识点。 《Angular 高级编程(第3版)》对每个主题的诠释都清晰凝练,涵盖有助于你提高工作效率的大量技术细节;言简意赅、深入浅出地讨论Angular框架重要的功能;每章都列出常见问题,并详细解释如何避免问题的发生。
前言/序言
在Web开发领域,一般使用HTML作为前端页面元素的声明式语言,使用CSS技术作为展示样式的描述语言,JavaScript作为业务处理交互的命令式语言。而构建非常复杂的Web应用时,纯粹而有限的HTML就显得非常不足,JavaScript本身也会随着项目代码量的膨胀而变得难以维护和管理,研发工期和成本也会随之难以控制。此时,一般使用类库(如iQueryDojo等)或框架(如Backbone、Ember和ExUS等)来提升开发效率,缩短项目的工期和降低成本,方便后续的维护和管理。 而AnguarjS不仅是一个理念先进的前端开发框架,更是一种端对端的解决方案,已经被用于Google的多款产品中。AngularjS遵从架构设计中的MVC模式,提倡展现、数据和逻辑处理组件的松耦合(类似Flex和WPF)。AngularjS 通过指令技术对传统HTML实现了自然扩展,通过编译技术实现了数据模型与展现视图的双向自动同步,消除了前端开发中繁杂的DOM操作。最后通过模块化设计解决了JS代码管理维护和按需加载的问题,提高了广大前端程序员以及后端程序员的生产效率。而且这种解耦本身,也对前端的自动化测试技术提供了良好的支持。 AngularjS诞生于2009年,由Misko Hevery和Adam Abrons创建,后为Google所收购。AngularjS有许多特性,最为核心的是:MVVM、模块化、自动化双向数据绑定、语义化标签、依赖注入等。AngularjS是专门为应用程序设计的HTML。 Angular 2.0是2014年10月22日在ng-Europe会议上发布的,该版本完全重写了AngularjS。为避免开发人员的困惑,开发团队宣布每个框架都应该使用单独的术语,其中“AngularjS”指的是版本1。x版本和没有“JS”的“Angular”指的是版本2及更高版本。 Angular 6于2018年5月4日发布。这是一个重要版本,它对底层框架的关注较少,考虑更多的是工具链,以及如何使Angular更易于在未来提高效率,如ng update、ng add、Angular Elements、Angular Material+CDK Components、Angular Material Starter Components、CLI Workspaces、Library Support、Tree Shakable Providers,Animations Performance Improvements和RxjS v6.Angular 7让Angular变得更出色,为顺应现代趋势增加了比特币挖掘、虚拟滚动、拖放等功能。 本书分为三个部分,每部分涵盖一组相关的主题。本书第1部分回顾了一些关键技术的基本知识,包括HTML、CSS和TypeScript,并展示如何构建第一个Angular应用程序。第1I部分介绍Angular为构建应用程序提供的构造块,依次描述所有这些构造块。深入描述Angular包含的很多内置功能,以及丰富的Angular自定义选项。第Ⅲ部分介绍如何使用高级功能来创建更复杂、可扩展的应用程序。演示如何在Angular应用程序中进行异步HTIP请求,如何使用URL路由在应用程序中导航,以及在应用程序的状态发生变化时如何使HTML元素具有动画效果。 本书堪称Angular领域的里程碑式著作,涵盖了关于Angular的几乎所有内容。本书平实、通俗的讲解,丰富、翔实的示例,递进、严密的组织,可以让新手毫无压力地登堂入室,迅速吸取新一代Web应用开发的精髓。对于具有相关经验的用户,本书对Angular概念和技术细节的全面剖析,以及引人入胜、切中肯綮的讲解,将帮助读者彻底掌握这个框架,在自己职业技术修炼之路上更进一步。 这里要感谢清华大学出版社的编辑们,他们为本书的翻译投入了巨大热情并付出了很多心血。没有他们的帮助和鼓励,本书不可能顺利付梓。 对于这本经典之作,译者本着“诚惶诚恐”的态度,在翻译过程中力求“信、达、雅”,但是鉴于译者水平有限,错误和失误在所难免,如有任何意见和建议,请不吝指正。
作者简介
Adam Freeman,是一位经验丰富的IT专业人士,曾在多家公司担任过高级职位,曾经担任一家全球银行的首席技术官和首席运营官。退休之后,他热衷于写作和长跑。