TypeScript是当今最流行的前端开发语言之一。因为TypeScript经常和其他框架生态和概念混在一起,所以TypeScript也是目前比较难掌握和学习的一门语言。学习TypeScript需要理论结合实践。在学习基本概念的同时,还要注重实战。关于TypeScript的书籍很多,但很难找到好的TypeScript书籍。一本好的TypeScript书是前端和后端、现代JavaScript和其他编程概念和关键框架之间的权衡。概述TypeScript和JavaScriptTypeScript是JavaScript的超集。TypeScript提供了与JavaScript相同的所有功能,但还提供了更高级的功能。TypeScript程序被编译成JavaScript,最后通过浏览器运行。TypeScript的目的是将其编译为JavaScript。JavaScript本身是有效的TypeScript,因为TypeScript是JavaScript的超集。jsx文件可以简单地更改为tsx。TypeScript是微软在2012年作为一个开源项目开发的。它提供了许多JavaScript之外的功能。TypeScript最强大的功能之一是使对象类型更可靠。TypeScript会抛出特定的错误来帮助我们调试。TypeScript还可以编译成旧版本的JavaScript,使应用程序可以被许多浏览器访问。很多人抱怨JavaScript丑陋,所以你可以看看TypeScript。学习编程我一直在重复的一点是,学习编程不要去看视频教程,而是要从书本入手,学习与实践相结合。当然,书籍的选择是非常重要的一环。一本好的编程书籍,不仅可以分享语法、理论和操作指导,更重要的是灌输各种语言的独特思维和惯用方法。这就是语言的核心和魅力所在。优先考虑真正专注于培养开发人员技能的书籍,而不仅仅是提供词汇表和定义。一本好的编程书籍最好搭配一本行业经典书籍《The Pragmatic Programmer》。本文精选了三本最好的TypeScript书籍,介绍给需要学习TypeScript的同学。TypeScript快速入门《TypeScript Quickly》作者:YakovFain和AntonMoiseev由Manning于2020年2月出版,是目前关于TypeScript的最有条理、最清晰、最实用的书籍之一。每一个章节都简洁明了,知道每一步前进。本书旨在帮助提高Web或独立应用程序开发的生产力。作者是实践者,他们为实践者写作。本书概述了使用TypeScript和其他流行的库和框架构建多个应用程序的过程。本书已经假定读者具备HTML、CSS和现代JavaScript的知识。教授TypeScript的挑战之一是TypeScript通常不能单独工作。该语言通常与其他前端框架(如React或Angular)搭配使用。与任何其他书籍一样,TypeScript通过深入研究框架来快速决定要说什么。TypeScript快速入门分为理论和实践两部分。第一部分是掌握TypeScript语法,第二部分是实战,以最流行的区块链应用为例。第1部分:掌握TypeScript语法,从第1章到第7章。第1章:熟悉TypeScript,涵盖了TypeScript编程、Typescript与JavaScript的优势、如何将TypeScript代码编译为JavaScript以及如何使用它使用VisualStudioCode编辑器。第2章:基本类型和自定义类型,包括使用类型声明变量和在函数声明中使用类型,使用type关键字声明类型别名,以及使用类和接口声明自定义类型。第3章:使用类和接口进行面向对象编程,包括类继承如何工作,为什么以及何时使用抽象类,接口如何强制类拥有具有已知签名的方法而不用担心实现细节,以及如何编程。第4章:使用枚举和泛型,涵盖使用枚举的好处、数字和字符串枚举的语法、泛型类型的用途以及如何编写支持泛型的类、接口和函数。第5章:装饰器和高级类型,包括TypeScript装饰器的用途、如何使用映射类型基于现有类型创建新类型、条件类型如何工作以及组合映射类型和条件类型。第6章:工具,包括使用源映射调试TypeScript代码、linters角色、使用Webpack编译和捆绑TypeScript应用程序、使用Babel编译TypeScript应用程序,以及如何使用Babel编译TypeScript并将其与Webpack捆绑在一起。第7章:在同一项目中使用TypeScript和JavaScript。第2部分是TypeScript在区块链应用中的应用,即第8章到第16章。第8章:开发自己的区块链应用,内容包括区块链应用的原理、哈希函数的作用、区块挖矿的作用,以及开发简单的区块链应用。基于区块链的应用程序。第9章:开发基于浏览器的区块链节点,包括为区块链创建Web客户端、创建用于哈希生成的小型库、运行区块链Web应用程序以及在浏览器中调试TypeScript。第10章:使用Node.js、TypeScript和WebSockets进行客户端-服务器通信,其中包括为什么区块链可能需要服务器、最长链规则、如何在TypeScript中创建Node.jsWebSocket服务器以及TypeScript使用的实用参考接口、抽象类、访问限定符、枚举和泛型。第11章:使用TypeScript开发Angular应用程序,包括对Angular框架的快速介绍,如何生成、构建和服务使用Angular和TypeScript编写的Web应用程序,以及Angular如何实现依赖注入。第12章:在Angular中开发区块链客户端,其中包括查看Angular中区块链Web客户端的代码以及如何运行与WebSocket服务器通信的Angular客户端。第13章:使用TypeScript开发React.js应用程序,包括对React.js库的快速介绍、React组件如何使用props和状态,以及React组件如何相互通信。第14章:在React.js中开发区块链客户端,其中包括检查用React.js编写的区块链Web客户端,React.jsWeb客户端如何与WebSocket服务器通信,在开发模式下运行一个与两个服务器一起工作的React应用程序并将区块链客户端的用户界面划分为组件并安排它们的通信。第15章:使用TypeScript开发Vue.js应用程序,其中包括Vue.js框架的快速介绍、如何使用VueCLI快速启动新项目、如何使用基于类的组件以及如何安排客户端使用Vue路由器进行导航。第16章:在Vue.js中开发区块链客户端,包括查看Vue.js版本的区块链Web客户端,运行一个与两个服务器一起工作的Vue应用程序,数据从输入交易流出以生成一个块并安排区块链客户端组件之间的通信。高效的TypeScript《Effective TypeScripts》,作者DanVanderkam,2020年O'Reilly出版物,旨在提高TypeScript开发人员的技能。这本书的美妙之处在于它的自以为是,它创造了规则和偏好来遵循这本书中的一切。这本书标榜自己是开发者的“第二本TypeScript书”,但由于其卓越的品质和对TypeScript学习者的价值,这本书名列榜首。本书可操作、易于应用,可以帮助您成为更好的TypeScript开发人员。虽然更多中级TypeScript开发人员可以从本书中受益,但初学者也可以从首次学习TypeScript的最佳建议中受益。EfficientTypeScript包括以下部分:第1章:理解TypeScript,包括理解TypeScript和JavaScript,理解你正在使用的TypeScript选项,实现类型独立,以及限制结构化类型的使用。第2章:TypeScript的类型系统,其中包括使用编辑器询问类型系统、将类型视为值集、知道如何判断符号的类型、更喜欢类型声明而不是类型声明、避免对象包装类型以及识别冗余限制属性检查,将类型应用于整个函数表达式,理解类型和继承之间的区别,等等。第3章:类型干扰,包括避免使用可推断类型的集群代码、对不同类型使用不同的变量、理解类型扩展、理解类型缩小、一次创建所有对象、与别名一致、使用异步函数代替异步回调代码等.第4章:类型设计,涵盖了倾向于始终表示有效状态的类型、避免在文档中重复类型信息、将空值推入类型的范围等。第5章:使用any,涵盖了对any类型使用尽可能窄的范围,更喜欢any的更精确的变体而不是普通的any,隐藏不安全的类型声明,等等。第6章:TypeDeclarations和@types,包括将TypeScript和@types放入devDependencies,了解类型声明涉及的三个版本,导出所有出现在公共API中的类型等。第7章:编写和运行代码,包括更喜欢ECMAScript特性而不是TypeScript特性、学习如何迭代对象、理解DOM层次结构等。第8章:迁移到TypeScript,包括编写标准JavaScript、尝试使用@ts-check和JSDoc来使用TypeScript、将TypeScript和JavaScript与allowJs混合使用等等。TypeScript编程书也贯穿了理论与实践相结合的基本教学方法:它让开发者深入了解TypeScript语言的工作原理(理论),并提供了大量关于如何编写生产TypeScript代码的实用建议(实践)。TypeScript是一种实用的语言,因此理论很快就会变成实践,本书的大部分内容最终都是两者的结合。《TypeScript编程:让你的JavaScript应用程序横向扩展》作者BorisCherny是一本适合初学者的书。本书于2019年5月出版,该书的中文译本已经上市,您可以从中挑选。ProgrammingwithTypeScript由以下几个部分组成:第一章:简介,简要说明了为什么要学习TypeScript,并介绍了TypeScript类型安全的价值。第2章:TypeScript:10英尺的视图,其中包括有关编译器、类型系统、TypeScript与JavaScript、代码编辑器设置等的信息。第3章:关于类型的一切,包括“类型的基础知识”,列出了类型从any到void的顺序。第4章:函数,包括有关声明和调用函数、与函数相关的多态以及类型驱动开发的信息。第5章:类和接口,包括有关类和继承、super、this作为返回类型、接口、与类相关的多态性、mixin等的信息。第6章:高级类型,包含有关类型(包括子类型和超类型)、总计、高级对象类型、条件类型和“逃避阴影”(例如类型声明、非空声明等)之间的关系的信息。第7章:处理错误,其中包括有关返回null、抛出异常、返回异常、选项类型等的信息。第8章:异步编程、并发和并行,包括有关JavaScript事件循环、使用回调、承诺、异步和等待、事件发射器、类型安全多线程等的信息。第9章:前端和后端框架,包括React和Angular等前端框架,以及使用Swagger、gRPC和GraphQL等API的类型安全。本节还讨论了使用TypeORM与数据库的安全交互。第10章:命名空间模块,包括有关JavaScript历史和模块、导入和导出、命名空间、声明合并等的信息。第11章:与JavaScript互操作,其中包括有关环境类型声明、从JavaScript迁移到TypeScript、在JavaScript中进行类型查找以及使用第三方JavaScript的信息。第12章:构建和运行TypeScript包含有关使用布局、工件、源映射、错误监控等构建TypeScript项目的信息。本节还讨论了在服务器或浏览器中运行TypeScript并发布到NPM。第十三章:结论。结论TypeScript是一种很难学习的编程语言。通过书籍学习TypeScript是一段旅程。希望本文推荐的这些书籍能为TypeScript的学习之旅提供有益的帮助和指导。
