现在学习 JavaScript 的哪种技术更好:Angular、jQuery 还是 Node.js?(转)
本文选自《开发者头条》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?(转)的更多相关文章
- 零基础:如何快速学习JavaScript,html+css技术
前端开发要学的知识内容涉及的会很宽泛,虽然说主要是HTML.CSS和JavaScript这些基础知识点,但达妹今天想强调一下,学前端开发除了要学这些基础知识外,学员还要在这之上进行延伸和深入的去学,而 ...
- 更快学习 JavaScript 的 6 个思维技巧
更快学习 JavaScript 的 6 个思维技巧 我们在学习JavaScript,或其他任何编码技能的时候,往往是因为这些拦路虎而裹足不前: 有些概念可能会造成混淆,尤其当你是从其他语言转过来的时候 ...
- 今天在研究jquery用ajax提交form表单中得数据时,学习到了一种新的提交方式
今天在研究jquery用ajax提交form表单中得数据时,学习到了一种新的提交方式 jquery中的serialize() 方法 该方法通过序列化表单值,创建 URL 编码文本字符串 序列化的值可在 ...
- JavaScript简明教程之Node.js
Node.js是目前非常火热的技术,但是它的诞生经历却很奇特. 众所周知,在Netscape设计出JavaScript后的短短几个月,JavaScript事实上已经是前端开发的唯一标准. 后来,微软通 ...
- 【灵魂拷问】你为什么要来学习Node.js呢?
[灵魂拷问]你为什么要来学习Node.js呢? 学习node.js适合的人群: 需要必备一些HTML,CSS,JavaScript及编程有一定程度了解的读者阅读,一些简单的命令行操作,具备服务端开发经 ...
- node.js 使用 UglifyJS2 高效率压缩 javascript 文件
UglifyJS2 这个工具使用很长时间了,但之前都是在 gulp 自动构建 时用到了 UglifyJS 算法进行压缩. 最近玩了一下 UglifyJS2 ,做了一个 在线压缩javascript工具 ...
- 初学者的Node.js学习历程
废话篇: 对于我这个新手的不能再白菜的人来说,nodejs的大名都有耳闻,所以说他是一项不可不克服的技能也是可以说的.但是之前没有搞清楚的情况之下胡乱的猜测,是的我对node.js没有一个具体的概念的 ...
- 如何理解Node.js和JavaScript的关系
一.Javascript的引擎 浏览器一般有两个引擎,一个是Html引擎,一个是脚本引擎. JavaScript是一种脚本语言,最初用于浏览器的动态显示,方便操作页面数据和内容.但实际上,它也可以在浏 ...
- node js学习(一)
1.简介 JavaScript是一种运行在浏览器的脚本,它简单,轻巧,易于编辑,这种脚本通常用于浏览器的前端编程,但是一位开发者Ryan有一天发现这种前端式的脚本语言可以运行在服务器上的时候,一场席卷 ...
随机推荐
- printk函数
一个不同是 printk 允许你根据消息的严重程度对其分类, 通过附加不同的记录级别或者 优先级在消息上. 你常常用一个宏定义来指示记录级别. 例如, KERN_INFO, 我们之前曾 在一些打印语句 ...
- data方法也是模型类的连贯操作方法之一,
data方法也是模型类的连贯操作方法之一,用于设置当前要操作的数据对象的值. 写操作 通常情况下我们都是通过create方法或者赋值的方式生成数据对象,然后写入数据库,例如: $Model = D(' ...
- VUE环境下获取当前时间并格式化--按秒数更新
<el-col :span="8"><div class="grid-content title-time"> {{date}}< ...
- Android基础控件ProgressBar进度条的使用
1.简介 ProgressBar继承与View类,直接子类有AbsSeekBar和ContentLoadingProgressBar, 其中AbsSeekBar的子类有SeekBar和RatingBa ...
- jeecms v9开发资料
开发文档 . 系统架构概述 本系统核心架构为 FreeMarker+hibernate+Spirng 的 mvc 分层架构. 1.1 分层架构模型 img 1.2 数据流转模型 (前端) img . ...
- sed awk 练习
#定位到某一行 添加内容 lower_case_flag=`cat /etc/my.cnf|grep "^lower_case_table_names"` if [ "X ...
- 《DSP using MATLAB》Problem 8.13
代码: %% ------------------------------------------------------------------------ %% Output Info about ...
- nprogress 转
转载:http://www.xuanfengge.com/front-end-nprogress-and-lightweight-web-progress-bar-nanobar.html 前言 进度 ...
- 07_Spring事务处理
一.事务概述 数据库的事务: 事务是一组操作的执行单元,相对于数据库操作来讲,事务管理的是一组SQL指令,比如增加,修改,删除等.事务的一致性,要求,这个事务内的操作必须全部执行成功,如果在此过程种出 ...
- Activiti 部分实用功能
helloworld中已经写了关于部署流程图,查询个人任务,完成个人任务部分.现在添加几个新的实用功能 1.判断流程是否完成,代码如下 public void isProcessEnd() { Str ...