做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 循环显示div的示例代码
Oct 18 Javascript
Javascript玩转继承(一)
May 08 Javascript
js使用正则实现ReplaceAll全部替换的方法
Jul 18 Javascript
再分享70+免费的jquery 图片滑块效果插件和教程
Dec 15 Javascript
理解javascript中Map代替循环
Feb 26 Javascript
浅谈js基本数据类型和typeof
Aug 09 Javascript
微信开发 消息推送实现代码
Oct 21 Javascript
bootstrap 设置checkbox部分选中效果
Apr 20 Javascript
vue改变对象或数组时的刷新机制的方法总结
Apr 24 Javascript
Vue父子传递实例讲解
Feb 14 Javascript
全面解析JavaScript Module模式
Jul 24 Javascript
Ajax是什么?Ajax高级用法之Axios技术
Apr 21 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 UTF-8、Unicode和BOM问题
2010/05/18 PHP
工厂模式在Zend Framework中应用介绍
2012/07/10 PHP
PHP中加密解密函数与DES加密解密实例
2014/10/17 PHP
php pdo操作数据库示例
2017/03/10 PHP
PHP中file_put_contents追加和换行的实现方法
2017/04/01 PHP
PHP实现通过strace定位故障原因的方法
2018/04/29 PHP
JS 修改URL参数(实现代码)
2013/07/08 Javascript
JavaScript二维数组实现的省市联动菜单
2014/05/08 Javascript
wap浏览自动跳转到wap页面的js代码
2014/05/17 Javascript
JavaScript中的对象的extensible属性介绍
2014/12/30 Javascript
Jquery 分页插件之Jquery Pagination
2015/08/25 Javascript
Vue.js教程之axios与网络传输的学习实践
2017/04/29 Javascript
详解node服务器中打开html文件的两种方法
2017/09/18 Javascript
基于 Immutable.js 实现撤销重做功能的实例代码
2018/03/01 Javascript
Three.js实现3D机房效果
2018/12/30 Javascript
js实现多个倒计时并行 js拼团倒计时
2019/02/25 Javascript
Vue.js中的组件系统
2019/05/30 Javascript
微信小程序 行的删除和增加操作实现详解
2019/09/29 Javascript
Python中序列的修改、散列与切片详解
2017/08/27 Python
python利用requests库模拟post请求时json的使用教程
2018/12/07 Python
Python操作Excel插入删除行的方法
2018/12/10 Python
Python 获取 datax 执行结果保存到数据库的方法
2019/07/11 Python
flask/django 动态查询表结构相同表名不同数据的Model实现方法
2019/08/29 Python
使用 Python 处理3万多条数据只要几秒钟
2020/01/19 Python
tensorflow转换ckpt为savermodel模型的实现
2020/05/25 Python
python从PDF中提取数据的示例
2020/10/30 Python
AVIS安飞士奥地利租车官网:提供奥地利、欧洲和全世界汽车租赁
2016/11/29 全球购物
美国最大的骑马用品零售商:HorseLoverZ
2017/01/12 全球购物
幼儿园毕业教师感言
2014/02/21 职场文书
《孔子游春》教学反思
2014/02/25 职场文书
竞选班委演讲稿
2014/04/28 职场文书
永远是春天观后感
2015/06/12 职场文书
中学后勤工作总结2015
2015/07/22 职场文书
python如何读取.mtx文件
2021/04/22 Python
python缺失值的解决方法总结
2021/06/09 Python
OpenCV项目实践之停车场车位实时检测
2022/04/11 Python