本文选自《开发者头条》1 月 7 日最受欢迎文章 Top 3,感谢作者 @WEB资源网 分享。

欢迎分享:http://toutiao.io/contribute

这是一个发布在 Quora 上的问题,提问者是一名Java转JavaScript的程序员,他想了解现在学习哪种技术更好:Angular、jQuery还是Node.js?其中 Mattias Petter Johansson (一名 Spotify 的开发人员) 的回答获得了2k+的赞同,分享给大家。

以下为译文:

欢迎来到前端的世界,Java程序员。

与其他语言相比,JavaScript社区的有些人员就像更换袜子一样经常更换方法、框架、构建系统甚至虚拟机。因此,更重要的是了解这个语言本身的基本特性,而不是学习一个特定的框架。如果你在某项技术中投入过多的话,那么你就会进入一个受伤的世界。

幸运的是,与其他语言相比,JavaScript是一门比较小的语言,所以你可以快速的掌握它。我经常推荐人们从《JavaScript: The Good Parts》这本书开始,这本书虽然有些年头了,但由于JavaScript的开放性标准以及语言本身变化缓慢,它还是适用的。

总得来说,下面这些都是JavaScript社区中比较火的内容(列表可能有些偏向):

  • React 和 Flux 是比较火的新兴事物(尤其是刚刚发布的React Native,由Facebook开发并在使用,非常棒)。

  • Angular(有些年头,但很流行,由Google开发),目前有两个非常不同的主流版本,所以我选择暂时不选用它们,直到尘埃落定。

  • Backbone 是一个适用于处理客户端东西的比较好但有点老的MVC框架。

  • Node.js 和 io.js。它们是同一种东西,只不过 io.js 是最新的一个分支。可以参考hudson/jenkins的分离。现在可以使用Node.js,而 io.js 有可能会最终胜出。

  • npm 是JavaScript主要的包管理器,它包含了一切的模块。另外还有jspm 和bower。jspm非常棒,但是太新了,而bower过于笨重,应避免使用(参考:为什么已经有npm了还要使用bower)。

  • Browserify非常棒,它允许你在浏览器中使用npm模块,而不仅仅是在服务器端。

  • Gulp 和 Grunt是构建系统,其中Gulp比较新,但很成熟,你应当使用它。

  • express.js–如果你想建立服务器端的东西,你可能会需要它。

  • Meteor 是一个超级未来但非常酷的全栈框架,与其他所有人的方式都不同,它非常流行,你应当尝试一下。

  • jQuery 对于 JavaScript就相当于WordPress对于PHP来说一样。每个人都会用,并想用它做一些东西。jQuery 对于DOM操作是非常好的,除此之外,不要使用它。

  • 学习一些函数式编程,这是我能确保你不再回到Java的最佳途径。可以参考我的回答:What is a simple explanation of higher order functions and callbacks in JavaScript?

我知道,这一切都会让人感到不知所措,并且这种感觉不会真正的消失,只需要拥抱它,深呼吸,Wooooo!

本文由 Specs 翻译整理,发布在 WEB资源网,转载请注明来源。

现在学习 JavaScript 的哪种技术更好:Angular、jQuery 还是 Node.js?(转)的更多相关文章

  1. 零基础:如何快速学习JavaScript,html+css技术

    前端开发要学的知识内容涉及的会很宽泛,虽然说主要是HTML.CSS和JavaScript这些基础知识点,但达妹今天想强调一下,学前端开发除了要学这些基础知识外,学员还要在这之上进行延伸和深入的去学,而 ...

  2. 更快学习 JavaScript 的 6 个思维技巧

    更快学习 JavaScript 的 6 个思维技巧 我们在学习JavaScript,或其他任何编码技能的时候,往往是因为这些拦路虎而裹足不前: 有些概念可能会造成混淆,尤其当你是从其他语言转过来的时候 ...

  3. 今天在研究jquery用ajax提交form表单中得数据时,学习到了一种新的提交方式

    今天在研究jquery用ajax提交form表单中得数据时,学习到了一种新的提交方式 jquery中的serialize() 方法 该方法通过序列化表单值,创建 URL 编码文本字符串 序列化的值可在 ...

  4. JavaScript简明教程之Node.js

    Node.js是目前非常火热的技术,但是它的诞生经历却很奇特. 众所周知,在Netscape设计出JavaScript后的短短几个月,JavaScript事实上已经是前端开发的唯一标准. 后来,微软通 ...

  5. 【灵魂拷问】你为什么要来学习Node.js呢?

    [灵魂拷问]你为什么要来学习Node.js呢? 学习node.js适合的人群: 需要必备一些HTML,CSS,JavaScript及编程有一定程度了解的读者阅读,一些简单的命令行操作,具备服务端开发经 ...

  6. node.js 使用 UglifyJS2 高效率压缩 javascript 文件

    UglifyJS2 这个工具使用很长时间了,但之前都是在 gulp 自动构建 时用到了 UglifyJS 算法进行压缩. 最近玩了一下 UglifyJS2 ,做了一个 在线压缩javascript工具 ...

  7. 初学者的Node.js学习历程

    废话篇: 对于我这个新手的不能再白菜的人来说,nodejs的大名都有耳闻,所以说他是一项不可不克服的技能也是可以说的.但是之前没有搞清楚的情况之下胡乱的猜测,是的我对node.js没有一个具体的概念的 ...

  8. 如何理解Node.js和JavaScript的关系

    一.Javascript的引擎 浏览器一般有两个引擎,一个是Html引擎,一个是脚本引擎. JavaScript是一种脚本语言,最初用于浏览器的动态显示,方便操作页面数据和内容.但实际上,它也可以在浏 ...

  9. node js学习(一)

    1.简介 JavaScript是一种运行在浏览器的脚本,它简单,轻巧,易于编辑,这种脚本通常用于浏览器的前端编程,但是一位开发者Ryan有一天发现这种前端式的脚本语言可以运行在服务器上的时候,一场席卷 ...

随机推荐

  1. 【笔记篇】Ubuntu一日游

    今天做数据的时候在Windows下出问题了(好像是爆栈了QAQ) 于是乎就打开了自己的Ubuntu虚拟机… 然而沉迷Windows的我已经忘记自己对这台虚拟机做过什么(比如装残了一个ycm自己都不知道 ...

  2. [Noip 2013 Day1-3] 货车运输 做法总结

    [Noip 2013 Day1-3] 货车运输 做法总结 Online Judge:Luogu-1967 Label:启发式合并,离线,整体二分,按秩合并,倍增,最大生成树 打模拟离线赛时做到,顺便总 ...

  3. SDOI2018Round1 && 九省联考 爆炸记

    Day 0 做了一上午火车,大概中午十二点左右到了烟台核电培训中心宾馆,宾馆蛮不错的,跟我在北京参加英才论坛时住的宾馆舒适程度上差不多. 下午花式颓颓颓,吃了晚饭(体验一般)去试机,听说用Lemon评 ...

  4. Lua程序设计之字符串精要

    (摘自Lua程序设计) 基本: Lua语言的字符串是一串字节组成的序列. 在Lua语言中,字符使用8个比特位来存储. Lua语言中的字符串可以存储包括空字符在内的所有数值代码,这意味着我们可以在字符串 ...

  5. Android开发 ExpandableListView 可折叠列表详解

    前言 在需要实现一个List的item需要包含列表的时候,我们就可以选择ExpandableListView. 其实这个View的原始设计还是ListView的那套.就是增加2层的ListView而已 ...

  6. Python的字符串修改报错:TypeError: 'str' object does not support item assignment

    Python中想修改字符串的最后一个字符,使用name[-1] = 'e'来实现,运行后报错. 报错内容是:TypeError: 'str' object does not support item ...

  7. 二分图——多重匹配模板hdu1669

    好像多重匹配一般是用网络流来做的.. 这是匈牙利算法的模板:lim是每个组的上界 思路是每个组都可以匹配lim个点,那么当点x遇到的组匹配的点数还没有超过lim时,直接匹配即可 如果已经等于了lim, ...

  8. GitHub:如何构建一个股票市场知识图谱?(附代码&链接)

    来源:专知 本文约 600007 董事⻓/董事 高燕 女 60 600007 执⾏董事 刘永政 男 50 600008 董事⻓/董事 ··· ··· ··· ··· ··· 注:建议表头最好用相应的英 ...

  9. WPF+MVVM+EF示例1

    实现了那些功能,先看看效果图: 项目工程目录: 接下来开始具体的步骤: 第一步:在VS中新建工程 第二步:使用NuGet 安装EntityFramework 第三步:使用NuGet 安装EntityF ...

  10. MFC中使用FLASH相关

    出自http://my.oschina.net/ypimgt/blog/62573 一.准备工作 第一步:下载并安装Adobe Flash Player. 从官方网站(http://get.adobe ...