做web开发 先学JavaScript


Posted in Javascript onDecember 12, 2014

有一天我被问到,为了快速地在 web 开发工作上增加优势,应该学习什么语言。我的思绪回到了大学,那时候我用 Pascal、Fortran、C和汇编语言,不过那个时候有不同的目标。

想做web开发,就学JavaScript

鉴于当前的状况和趋势,答案相对容易给出来:学习 JavaScript。四周看看,曾经低端的浏览器脚本语言现在变得随处可见,从服务器端到客户端,每天好像有更多的选择。

出身低微

我记得数年前投入 web 开发,学习了 HTML、用 Perl 开发 CGI 脚本。Netscape 在其 2.0 版本的浏览器里引入了一种叫做 LiveScript 的脚本语言,此后不久名字改成了 JavaScript。这是一种很酷的语言,但是在浏览器大战中,大约一年以后,由于微软增加了支持,JavaScript 被限制在 Netscape 的浏览器里。它早期作用被限制在字段有效性验证之类的简单任务上,但是与服务器端脚本比起来,它是非常好的选择。JavaScript 逐步变成了 ECMAScript 名字下的一种标准。

这么多年来,JavaScript 因为用于浏览器交互而成为一种酷酷的语言,但是随着 Ajax 突然爆发,支持开发者从 web 服务器发送和接收数据、而不用刷新网页,它赢得了更多的认可。接下来的一波应该被叫做jQuery 革命,因为它和其它框架提供了开发强大 web 应用程序的易用特性。甚至微软带着 WinJS 框架也加入了;还有,Redmond 巨人选择 JavaScript 做为开发 Windows 8 应用程序的平台。

当 Google 在 Chrome 浏览器加入了高性能的 JavaScript V8引擎时,JavaScript 有了一个较大飞跃。这次发展对于服务器端 Node.js 上 JavaScript 的全新范式的发展是有帮助的。Node.js 的使用一直都是让人震惊的,还有用于开发从网站到功能完整的应用程序的各种应用、大量 JavaScript 框架的产生。最后一项是数据,而 JSON 标准成为传输数据的最流行的方式之一的苗头,已初见端倪,大部分重要的数据存储都支持它。

势头还在继续

在过去的这么多年里,有很多新技术产生了(网站的进化提供了一个伟大的技术时间线),但是 JavaScript 重要的一个方面是,它已经存在了大约两个世纪。今天它已经稳固地成为了功能丰富的语言。

这与刚开始的情形比起来,相差甚远,那时候 JavaScript 从来都没有自豪地写到简历里,因为真正的程序员是不屑于掌握它的。而现在,JavaScript 是大部分招聘人员考核的重点。

当你正在寻找 web 开发的工作时,我认为 JavaScript 是可以起步的伟大语言,下面是重要原因:

进入门槛低:JavaScript 与其它语言相比,相对容易学习,你能够在线上找到很多现成的脚本和资源。另外,JavaScript 可以被任意文本编辑器或各种免费工具创建,包括 Atom、ChromeDev Editor 和 jsFiddle。
跨平台:所有浏览器,还有基于 Node.js 的服务器端,都支持 JavaScript,在大部分移动平台也正常运行。一套 JavaScript 技能可用来开发面向大部分平台的应用程序。(注意:JavaScript 不是万能工具。比如,像数据分析之类的耗费资源的应用程序,最好使用另一种语言。)
已有技术:服务器端的 JavaScript 或许是个相对崭新的概念,但是核心 JavaScript 语言已经存在多年了,随着时间的增长,它已经成熟,并作为通用的 web 脚本语言被广为接受。
跳板:JavaScript 和其它平台兼容较好,因此当你曾经冒险采用 Ruby on Rails、ASP.NET、PHP 等其它环境时,你的 JavaScript 技能将是必需的。你仍然需要学习 HTML 和一些 CSS,通过 JavaScript 来开发强壮的 web 应用程序。
热门技术:语言是建立了,但是行业本身找到了带有 JavaScript 知识和技能的语言。看看招聘职位,你将看到趋势。

不是你哥们儿的 JavaScript

我过去听说 JavaScript 被描述成易于学习,却难以掌握。对于很多语言,可能都是这样,但是 web 的 JavaScript 饱和程度意味着,初学的开发者可以从其它网站快速拷贝经过检验的代码,做些必要修改就可以使用,而不需要完全理解代码。

如今 JavaScript 是 web 的中坚力量,因此那些想成为 web 开发者的人们,应该集中精力于它,以作为学习的第一门语言。

你同意吗?如果你不同意,那么你认为想找 web 开发工作的开发者应该学习的第一门语言是哪种?在评论里告诉我们。

Javascript 相关文章推荐
JS 自动完成 AutoComplete(Ajax 查询)
Jul 07 Javascript
Javascript控制input输入时间格式的方法
Jan 28 Javascript
javaScript的函数对象的声明详解
Feb 06 Javascript
JS随机调用指定函数的方法
Jul 01 Javascript
jQuery AjaxUpload 上传图片代码
Feb 02 Javascript
深入理解js generator数据类型
Aug 16 Javascript
浅谈angular懒加载的一些坑
Aug 20 Javascript
Jquery组件easyUi实现手风琴(折叠面板)示例
Aug 23 Javascript
JS 60秒后重新发送验证码的实例讲解
Jul 26 Javascript
Vuejs 单文件组件实例详解
Feb 09 Javascript
如何更好的编写js async函数
May 13 Javascript
JavaScript实现简单计算器功能
Dec 19 Javascript
兼容主流浏览器的JS复制内容到剪贴板
Dec 12 #Javascript
Javascript模拟加速运动与减速运动代码分享
Dec 11 #Javascript
javascript中HTMLDOM操作详解
Dec 11 #Javascript
javascript实现修改微信分享的标题内容等
Dec 11 #Javascript
javascript表单验证和Window详解
Dec 11 #Javascript
使用百度地图api实现根据地址查询经纬度
Dec 11 #Javascript
javascript实现倒计时N秒后网页自动跳转代码
Dec 11 #Javascript
You might like
比较全的PHP 会话(session 时间设定)使用入门代码
2008/06/05 PHP
PHP IDE PHPStorm配置支持友好Laravel代码提示方法
2015/05/12 PHP
使用一个for循环将N*N的二维数组的所有值置1实现方法
2017/05/29 PHP
如何在centos8自定义目录安装php7.3
2019/11/28 PHP
JavaScript中获取未知对象属性的代码
2011/04/27 Javascript
从js向Action传中文参数出现乱码问题的解决方法
2013/12/29 Javascript
Javascript中的getUTCDay()方法使用详解
2015/06/10 Javascript
smartcrop.js智能图片裁剪库
2015/10/14 Javascript
简单实现js选项卡切换效果
2017/02/09 Javascript
原生js编写2048小游戏
2017/03/17 Javascript
深入理解JavaScript创建对象的多种方式以及优缺点
2017/06/01 Javascript
JavaScript实现开关等效果
2017/09/08 Javascript
Vue异步组件处理路由组件加载状态的解决方案
2018/09/07 Javascript
vue.extend与vue.component的区别和联系
2018/09/19 Javascript
基于JS开发微信网页录音功能的实例代码
2019/04/30 Javascript
layui实现鼠标移动到单元格上显示数据的方法
2019/09/11 Javascript
原生JavaScript实现日历功能代码实例(无引用Jq)
2019/09/23 Javascript
微信小程序实现发微博功能的示例代码
2020/06/24 Javascript
Python是编译运行的验证方法
2015/01/30 Python
python正则表达式及使用正则表达式的例子
2018/01/22 Python
Python基于辗转相除法求解最大公约数的方法示例
2018/04/04 Python
PyTorch搭建多项式回归模型(三)
2019/05/22 Python
pandas删除行删除列增加行增加列的实现
2019/07/06 Python
amazeui模态框弹出后立马消失并刷新页面
2020/08/19 HTML / CSS
学生打架检讨书1000字
2014/01/16 职场文书
高中体育教学反思
2014/01/24 职场文书
四群教育工作实施方案
2014/03/26 职场文书
项目投资意向书
2014/04/01 职场文书
团日活动总结范文
2014/04/25 职场文书
反四风个人对照检查材料
2014/09/26 职场文书
学校法制宣传日活动总结
2014/11/01 职场文书
2014年初三班主任工作总结
2014/12/05 职场文书
2016中考冲刺决心书
2015/09/22 职场文书
先进基层党组织事迹材料2016
2016/02/29 职场文书
字典算法实现及操作 --python(实用)
2021/03/31 Python
详解CSS故障艺术
2021/05/25 HTML / CSS