javascript⼯具_适⽤于现代JavaScript开发⼈员的基本⼯具和
库
javascript⼯具
学习JavaScript是⼀个伟⼤的旅程,但是了解语⾔及其语法只是⼀个开始。 ⼀旦新⼿成为⼀名熟练⼿,他们将⾯临着看似⽆数的⼯具和库,这些⼯具和库可⽤于创建,管理和维护现代JavaScript代码。 混乱总是在袭来!
就像在实际旅途中⼀样,您需要某种指导或地图来进⾏⾃我定位。 因此,这就是本⽂的⽬的-为您提供有关可⽤可能性的结构化概述,并为那些希望了解更多信息的⼈指明道路。 如果您曾经想知道交易⼯具是什么(⼤多数现代开发⼈员在⼯作流程中使⽤的⼯具),这就是答案。
1.代码版本控制— Git,Subversion
当程序代码超过100⾏时,您应该考虑的第⼀件事是实现某种版本控制系统,例如或 。 这将允许您拥有多个版本的代码(这意味着您可以在出现问题时轻松地还原到以前的版本)并创建源代码分⽀以实现不同的功能,⽽不会破坏现有的代码库。 您还可以使⽤或服务将代码备份到云中。
请参见此处。
2.代码⽂档-JSDoc,YUIDoc
对您和对试图理解所编写程序的⽬的的⼈员⽽⾔,记录您的代码极为重要。 使⽤诸如或类的⽂档⽣成器来描述您的功能将确保任何开发⼈员都可以了解其⽬的⽽⽆需检查它们。 这两种⼯具都允许您使⽤注释块为项⽬⾃动⽣成完整HTML⽂档⽹站。 只要您使注释保持最新,⽂档就会随之⽽来。
有关请参见此处。
3.代码分析-JSLint,JSHint
要检查你的代码称为编码缺陷和潜在的错误(如缺少括号或分号,引⽤未声明的变量,依此类推),你应该定期运⾏⼀个静态代码分析⼯具,如或 ,对你的代码。 纠正⼯具标记中的所有问题将提⾼您的代码质量,并使您免于不必要的调试。 ⼀个好的整理⼯具也可以帮助确保项⽬符合编码标准。
有关请参见此处。
4.构建和⾃动化⼯具-Grunt,Gulp,Brunch
诸如 , 或⼯具可以⾃动化各种Web开发任务。 例如:创建⽂档,运⾏代码分析,进⾏预处理,运⾏测试,执⾏代码串联,代码最⼩化和图像优化。 请记住:这些并不是很好的⼯具,它们是当今⽹站开发中必不可少的部分。
本⽂探讨的许多⼯具和库都具有相关的Grunt,Gulp或Brunch插件,可帮助您加快和改善⼯作流程,⽽⽆需您付出任何不必要的努⼒。
看到这⾥对 。
有关请参见此处。
5.测试-QUnit,Jasmine,Mocha;浏览器堆栈,酱汁实验室
随着程序复杂性的提⾼,为函数编写测试变得越来越重要。 为了确保您的代码按预期运⾏,应使⽤ , 或类的框架编写单元测试。 单元测试确保对于任何功能并给定⼀组输⼊,都将返回正确的值。
下⼀步是使⽤或类的服务在多个操作系统的多个浏览器中运⾏这些测试。 两种(收费)服务均允许您在多个浏览器中同时⾃动运⾏单元测试。 它们还允许您以交互⽅式或通过使⽤来测试站点。
请参阅此处以获取有关 。
请参阅此处以了解 。
有关请参见此处。
6.测量-伊斯坦布尔,柏拉图
JavaScript开发中的另⼀个重要点是评估您的代码。 诸如类的代码覆盖率⼯具可以衡量正在测试的代码的百分⽐。 ⾼代码覆盖率意味着程序包含错误的机会较低。
您可以执⾏的另⼀项测量是针对功能的复杂性。 更简单的功能更易于理解和维护,因此不易出错。 命令⾏⼯具通过可视化JavaScript源代码的复杂性可以帮助您完成这项⼯作。
请参阅此处以获取 。
7.模块和依赖性管理-RequireJS,Browserify,Webpack
在较⼤JavaScript应⽤程序中,⽂件数量会⼤⼤增加。 要管理⼤量⽂件,它们的依赖关系以及将它们加载到页⾯中的⽅式,您需要⼀个⼯具,例如 , 或 。 这些⼯具可以帮助模块化编程风格,从⽽将⼤型应⽤程序分解为较⼩的可管理代码块。
有关请参见此处。
请参阅此处 。
8.包装— Bower,Component,npm,jspm.io
网站源码在线免费学习PHP!
全⾯介绍PHP和MySQL,从⽽实现服务器端编程的飞跃。
原价$ 11.95 您的完全免费
免费获得这本书
在您的项⽬中,您经常需要⼀个第三⽅库,您可以使⽤包管理⼯具(例如 , , 或在⼏秒钟内获取并安装第三⽅库。 包管理器还将通过确保您的项⽬使⽤所需库及其依赖项的正确版本来为您管理版本。
在列出的软件包管理器中,最常见的两个是npm和Bower。 Npm主要处理与节点兼容JavaScript模块,⽽Bower专注于整个Web平台。使⽤npm管理服务器端程序包和使⽤bower管理客户端程序包并不少见。
还值得⼀提的是,使⽤所有这些⼯具,您也可以创建和发布⾃⼰的包。
请参阅此处 。
请参阅此处 。
9.服务器端JavaScript-Node.js,io.js
如今,您不受限于在服务器端操作中使⽤诸如PHP之类的语⾔。 使⽤诸如或类的框架,您只能在客户端和服务器上使⽤JavaScript。 这样做有很多好处,从提⾼⽣产⼒(⽆上下⽂切换)到开发⼈员满意(因为谁不喜欢JavaScript,对吧?)。
请参阅此处
请参阅此处以
10.实时应⽤程序-流星,SocketStream,Socket.io
Node的⾮阻塞,事件驱动的I / O机制意味着它确实在实时Web应⽤程序中⼤放异彩。 因此,设计了许多基于Node的框架和库(例如 ,或 )。 因此,如果您打算冒险进⼊实时通信领域(也许是创建在线游戏或聊天应⽤程序),那么其中之⼀可能就是您想要的⼯具。
有关请参见此处。
有关 (付费) 请参见此处。
11.单页应⽤程序— AngularJS,Backbone,Ember,React,KnockoutJS
当今JavaScript世界的繁荣之⼀是 (SPA)的出现。 与常规⽹站(⽤户在HTML⽂档集合之间导航)不同,SPA是可容纳在单个⽹页上的⽹站。 SPA是完全交互式的,可提供类似于桌⾯应⽤程序的更流畅的⽤户体验。
如果您对SPA开发感兴趣,那么以下是最受欢迎的框架: , , , , 。
有关请参见此处。
有关请参见此处。
请参阅此处以 。
12.模板—把⼿,胡须,⽟
如今,当常见的情况是使⽤JavaScript在前端呈现内容时,很可能会使⽤诸如 , 或类的模板语⾔。
模板是在视图中分离标记和逻辑并最⼤化代码可重⽤性和可维护性的好⽅法。 它们由HTML标记组成,并带有标记,模板语⾔将在这些标记中输出数据。 模板语⾔还⽀持基本逻辑结构,例如条件和循环。
请参阅此处以获取有关 。
请参阅此处以 。
13.函数式JavaScript — UnderscoreJS,Lodash
是⼀种样式,它既避免更改状态,⼜避免了可变数据。 由于其灵活性,JavaScript可以很好地适应功能性编程风格,并且围绕此概念涌现了许多库。
主要竞争者的两个是和 (下划线的叉)。 它们提供了⼤量有⽤的函数式编程助⼿,以对对象,数组,字符串等执⾏通⽤操作。
有关请参见此处(迷你系列的⼀部分)。
14.实⽤程序-UglifyJS,YUI Compressor,Accounting.js,Moment.js
实⽤程序是特定的代码库,可以使您的⽣活更轻松。 例如,通过使⽤或您可以精简代码,完全减⼩JavaScript的⽂件⼤⼩,从⽽提⾼性能。
作为JavaScript开发⼈员,您应该已经知道处理浮点数会产⽣⼩错误,这很危险,尤其是在使⽤货币时。 在这种情况下,您可以考虑使⽤。
JavaScript中的另⼀个痛苦的任务是处理⽇期。 幸运的是,对于这种情况也有⼀个简单的解决⽅案。 只需抓住 ,您就可以创建,操作和格式化⽇期,这是前所未有的。
有关在请参见此处。
15. JavaScript编译器/编译器-CoffeeScript,LiveScript,TypeScript,Babel,es6-transpiler
Web开发⼈员希望消除⼀些JavaScript的怪癖,从⽽导致创建了许多 。 这些语⾔使某些任务(例如创建类)更加容易。 最受欢迎的三个选择是 , 和 。
新的ES6标准从这些语⾔中借鉴了许多概念,现在我们可以看到它们是⽤JavaScript本⾝实现的。 您现在还不能完全开始使⽤ES6,因为浏览器仍然不完全⽀持ES6,但是您可以通过使⽤诸如或之来间接使⽤它。
请参阅此处 。
有关请参见此处。
摘要
因此,有了它-作为JavaScript开发⼈员,您应该了解的主要⼯具和库。 不必全部使⽤它们,但是如果您是⼀位认真JavaScript开发⼈员,那么很可能会遇到很多。 不幸的是,我⽆法告诉您哪个是最佳选择,因为每种库/⼯具都有其⾃⾝的优缺点。 因此,查看哪些最适合您的最佳⽅法是继续尝试它们。
我是否遗漏了任何⼯具或库? 在评论中让我知道。
javascript⼯具
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论