0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

前端工程师是如何逆袭的

工程师人生 来源:网络整理 作者:工程师吴畏 2018-09-27 10:31 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

2006年至今,我们时常可以看到JavaScript的新闻,刚开始只是JavaScript引擎性能的提升,到后来发现很多是来自HTML5和Node创造的奇迹。如果只看表面,很容易让人感觉这又是一颗卫星。这种现象让人觉得不可信,所以出现了以下各种版本的误解。

为了后端而后端,有意思吗?

怎么又发明了一门新语言?

JavaScript承担的责任太重了。

直觉上,JavaScript不应该运行在后端。

前端工程师要逆袭了。

一方面,大家看到JavaScript在各个地方放出异彩,其他语言的开发者既羡慕它的成果,又担心它对当前所从事的语言造成冲击;另一方面,人们还是有JavaScript只能做前端脚本的定势思维。究其原因,还是因为人们缺乏历史观层次上的认知,所以会产生一些莫须有的惴惴不安。

1995年,JavaScript随网景公司发布的Netscape Navigator 2.0发布,它最早命名为LiveScript,随后更名为JavaScript。它出自如今的Mozilla公司的CTO——Brendan Eich之手,其产生来源于网景公司发布的Netscape Navigator浏览器需要一种脚本语言来协助浏览器做一些简单的动态操作。当时网景公司与Sun公司合作密切,不懂技术的管理层希望得到一个Java的脚本版语言,以期能像Java一样风靡。Brendan Eich原本进入网景公司是希望做Scheme语言的开发,但是却接到了一个不喜欢的任务,但迫于当时形势,不得不完成此事,于是JavaScript之父在10天的时间里仓促完成了JavaScript的设计,当时的项目代号是Mocha,名字叫LiveScript。

这门语言除了看起来像Java外,本质与Java语言相去甚远,管理层期望的Java Script其实借鉴了C、Scheme、Self、Java的设计。尽管仓促,但是这门语言还是借鉴了其他语言的不少优点,如函数式、原型链继承等。处于Java阴影下的这门语言获得了它最终的名字:JavaScript。至今,仍然还有许多人分不清Java与JavaScript的关系,就像分不清雷锋与雷峰塔一样。

虽然JavaScript的产生与Netscape Navigator浏览器的需求有关系,但它并非只是设计出来用于浏览器前端的。早在1994年,网景公司就公布了其Netscape Enterprise Server中的一种服务器端脚本实现,它的名字叫LiveWire,是最早的服务器端JavaScript,甚至早于浏览器中的JavaScript公布。对于这门图灵完备的语言,网景早就开始尝试将它用在后端。

随后,微软在第一次浏览器大战时,于1996年发布的IE 3.0中也包含了它的脚本语言:JScript。基于商标的原因,它叫JScript,但是与JavaScript兼容。在1997年年初,微软在它的服务器IIS 3.0中也包含了JScript,这就是我们在ASP中能使用的脚本语言。鉴于微软处处与网景针锋相对,出于保护自己的目的,网景公司推进了JavaScript的标准化进程,于1996年11月将JavaScript递交给ECMA国际标准组织,在1997年7月公布了第一个版本,是为ECMA-262号标准,又称ECMAScript。

可以看到,JavaScript一早就能运行在前后端,但风云变幻,在前后端各自的待遇却不尽相同。伴随着Java、PHP、.NET等服务器端技术的风靡,与前端浏览器中的JavaScript越来越重要相比,服务器端JavaScript逐渐式微。只剩下Rhino、SpiderMonkey用于工具。

然而,这个世界是变化的。第一次浏览器大战落幕后的JavaScript的世界有些平静,但依然在萌生一些变化。Google对Ajax的应用让JavaScript变得越来越重要。Firefox的发布掀起了对IE的反攻,迎来了第二次浏览器大战,竞争令JavaScript的性能不断提升,Chrome的加入令它高潮迭出。CommonJS规范的提出,不断在完善JavaScript。ECMAScript标准的不断推进,令语言更加精炼简洁,不停地去芜存菁。

浏览器端JavaScript在Web应用中盛行,甚至让人们忘掉了JavaScript可以在服务器端运行这码事。但是,服务器端JavaScript现在回来了,因为Node诞生了。Node的诞生离不开上述的历史契机,服务器端JavaScript在漫长的历史中长期停滞留下空白,但Node重新将这个领域激活。Ryan Dahl基于对高性能Web服务器的探索,无意间促成了服务器端JavaScript领域的焕然一新。Node凭借V8的高性能和异步I/O模型将JavaScript重新推向了一个高潮。现在,Node不仅满足JavaScript同时运行在前后端,而且性能还十分高效。与传统印象中的不同,它甚至可比于当前的高效脚本语言。

奇妙的反应还在继续,前后端要跨语言开发的现状已经开始改变,因为语言堆栈的不同,开发者的分工也进行了细分:前端工程师和后端工程师。专业技能因为分工而精进,但也将技能变为专利,似乎前端工程师不能进行后端开发,后端工程师搞不定前端开发,犹如树立的墙。但Node的出现令这种分工的界限又开始模糊了。同时一些后端工程师也关注到Node,他们甚至不关心前后端语言是否一致,而是赤裸裸地表示对Node高性能的垂涎,如实时、高并发等。

大量的前后端工程师加入了Node的开发阵营,GitHub上JavaScript是最活跃的开发语言,NPM社区第三方模块恐怖的增长速度和下载量都昭示着这个过程不可逆,在这里吼一声万能的NPM,总能找到你需要的解决方案。很多不断涌现的项目和创意都因为Node和前端开发能共用一种语言而独特。换言之,Node的本意是提供一个高性能的面向网络的执行平台,但无意间促成了JavaScript社区的繁荣,并进而形成强大的生态系统。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 工程师
    +关注

    关注

    59

    文章

    1600

    浏览量

    70678
  • 前端
    +关注

    关注

    1

    文章

    241

    浏览量

    18703
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    硬件工程师面试必会:10个核心考点#硬件设计 #硬件工程师 #电路设计 #电路设计

    硬件工程师
    安泰小课堂
    发布于 :2025年09月23日 18:00:33

    做了电子工程师之后,最好拍的视频出现了#硬件设计 #电子DIY #电子工程师

    电子工程师
    安泰小课堂
    发布于 :2025年06月24日 17:45:57

    (仰天长啸)为什么受伤的总是硬件工程师...#MDD#MDD辰达半导体 #电子工程师

    电子工程师
    MDD辰达半导体
    发布于 :2025年04月27日 18:21:47

    问,成为硬件工程师需要几只手?#硬件工程师 #YXC晶振 #扬兴科技 #搞笑

    硬件工程师
    扬兴科技
    发布于 :2025年04月25日 17:15:37

    Allegro工程师能力升级建议 工程师技能如何升级进阶

    根据Cadence认证体系及中国企业需求,Allegro工程师能力分三级,分别是初级、中级、高级工程师。那么这三种工程师技能如何升级进阶?   1、初级工程师(Layout基础) ①六
    的头像 发表于 03-31 11:39 1336次阅读

    硬件工程师:回答我!#回答我 #硬件工程师 #YXC晶振 #扬兴科技

    硬件工程师
    扬兴科技
    发布于 :2025年03月25日 18:46:59

    一招拿捏电子工程师#被AI拿捏了 #电子工程师 #电子电工

    电子工程师
    安泰小课堂
    发布于 :2025年03月25日 17:30:51

    中国品牌,初心不变,电子工具行业有感 #原创 #MINIWARE #电子爱好者 #电子工程师

    电子工程师
    易迪赛智能科技
    发布于 :2025年01月20日 17:42:58

    硬件工程师工作前VS工作后!抱歉!是我想的太简单了!# #电工 #电子爱好者

    硬件工程师
    MDD辰达半导体
    发布于 :2025年01月08日 18:15:18

    焊板子前,焊板子后,硬件工程师居然两幅面孔!# #电工 #电路知识 #电路原理

    硬件工程师
    MDD辰达半导体
    发布于 :2025年01月07日 18:15:30

    笑死,掌握一眼识别资深硬件工程师的诀窍了!# #电路知识 #电工 #硬核拆解

    硬件工程师
    MDD辰达半导体
    发布于 :2024年12月20日 17:48:17