本文选自《开发者头条》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. Android开发 设备横屏与竖屏的详解

    需要了解横竖屏切换关键知识 1.在Android设备的横竖屏幕,每一次切换横竖屏其实是在重新创建Activity,Activity会重新走一遍生命周期.从onCreate 到 onDestroy 2. ...

  2. Cutting Game

    Cutting Game 刚开始有一\(n\times m\)的矩形网格纸,双方轮流操作,剪网格纸,对于任意一个局面而言,你可以选择其中一张网格纸,把它剪成两个长宽都是整数的网格纸,剪出\(1\tim ...

  3. MongDB4.1-入门学习之下载安装配置

    下载安装配置三步走 下载,MongoDB官网下载中心 下载_.msi_安装版 安装,注意以下几个步骤: Choose Setup Type: Please Choose Custom Custom S ...

  4. ArcMap10.2 中制作符号库

    今天在发布地图服务时,发现地图中的3D符号没法用,出现”00013“错误,如下:

  5. 爬虫(二)建立代理ip池

    之前我们说网站反爬虫的一个常用方法是检测ip,限制访问频率.所以我们要通过设置代理ip的办法绕过这个限制.有不少提供免费代理ip的网站,像https://www.xicidaili.com/nt/,我 ...

  6. <每日一题>题目16:简单的python练习题(1-10)

    #1.python程序中__name__的作用是什么? __name__这个系统变量用来表示程序的运行方式. 如果程序在当前膜快运行,__name__的名称就是__main__, 如果不在(被调用), ...

  7. Leetcode949. Largest Time for Given Digits给定数字能组成最大的时间

    给定一个由 4 位数字组成的数组,返回可以设置的符合 24 小时制的最大时间. 最小的 24 小时制时间是 00:00,而最大的是 23:59.从 00:00 (午夜)开始算起,过得越久,时间越大. ...

  8. Leetcode300. Longest Increasing Subsequence最长上升子序列

    给定一个无序的整数数组,找到其中最长上升子序列的长度. 示例: 输入: [10,9,2,5,3,7,101,18] 输出: 4 解释: 最长的上升子序列是 [2,3,7,101],它的长度是 4. 说 ...

  9. 【心无旁骛】vuex-typescript-example

    我不惮以最大的赞美去赞美这样的项目,真的是非常有创意又有能力. 先放上我喜欢的这个项目的开源地址:https://github.com/gluons/vuex-typescript-example 我 ...

  10. phpmyadmin连接远程mysql

    phpmaadmin连接远程mysql连接远程mysql步骤.保证已经有�phpmyadmin,如果没有,去http://www.phpmyadmin.net/home_page/downloads. ...