做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 相关文章推荐
浏览器常用高宽的jquery插件
Feb 24 Javascript
jquery的trigger和triggerHandler的区别示例介绍
Apr 20 Javascript
JavaScript基于ajax编辑信息用法实例
Jul 15 Javascript
使用Angular缓存父页面数据的方法
Jan 03 Javascript
mui上拉加载更多下拉刷新数据的封装过程
Nov 03 Javascript
weebox弹出窗口不居中显示的解决方法
Nov 27 Javascript
简述vue中的config配置
Jan 23 Javascript
基于vue中对鼠标划过事件的处理方式详解
Aug 22 Javascript
JavaScript基于数组实现的栈与队列操作示例
Dec 22 Javascript
JSON基本语法及与JavaScript的异同实例分析
Jan 04 Javascript
js取0-9随机取4个数不重复的数字代码实例
Mar 27 Javascript
如何在vue 中引入使用jquery
Nov 10 jQuery
兼容主流浏览器的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
Ajax+PHP快速上手及简单应用说明
2013/07/24 PHP
php smtp实现发送邮件功能
2017/06/22 PHP
Yii框架多语言站点配置方法分析【中文/英文切换站点】
2020/04/07 PHP
输入框的字数时时统计—关于 onpropertychange 和 oninput 使用
2011/10/21 Javascript
javascript中的delete使用详解
2013/04/11 Javascript
js四舍五入数学函数round使用实例
2014/05/09 Javascript
JS实现窗口加载时模拟鼠标移动的方法
2015/06/03 Javascript
前端弹出对话框 js实现ajax交互
2016/09/09 Javascript
使用prop解决一个checkbox选中后再次选中失效的问题
2017/07/05 Javascript
使用async await 封装 axios的方法
2018/07/09 Javascript
微信小程序下拉框组件使用方法详解
2018/12/28 Javascript
浅析vue中的MVVM实现原理
2019/03/04 Javascript
vue中多路由表头吸顶实现的几种布局方式
2019/04/12 Javascript
three.js 制作动态二维码的示例代码
2020/07/31 Javascript
Python实现读取目录所有文件的文件名并保存到txt文件代码
2014/11/22 Python
python使用正则表达式提取网页URL的方法
2015/05/26 Python
python实现ping的方法
2015/07/06 Python
新建文件时Pycharm中自动设置头部模板信息的方法
2020/04/17 Python
Python如何给你的程序做性能测试
2020/07/29 Python
PyCharm2020.1.2社区版安装,配置及使用教程详解(Windows)
2020/08/07 Python
Python unittest装饰器实现原理及代码
2020/09/08 Python
python os.listdir()乱码解决方案
2021/01/31 Python
Hawes & Curtis澳大利亚官网:英国经典服饰品牌
2018/10/29 全球购物
开普敦通行证:Cape Town Pass
2019/07/18 全球购物
巴西葡萄酒商店:Divvino
2020/02/22 全球购物
中专生自我鉴定范文
2013/12/19 职场文书
建筑工程专业大学生求职信
2014/04/23 职场文书
银行先进个人事迹材料
2014/05/11 职场文书
司法所长先进事迹
2014/06/02 职场文书
汉语专业毕业生自荐信
2014/07/06 职场文书
五五普法心得体会
2014/09/04 职场文书
2014年艾滋病防治工作总结
2014/12/10 职场文书
三好学生个人总结
2015/02/15 职场文书
物流业务员岗位职责
2015/04/03 职场文书
党支部季度考核意见
2015/06/02 职场文书
Python线程池与GIL全局锁实现抽奖小案例
2022/04/13 Python