Electron学习一:Electron、Node.js、JavaScript、JQuery、Vue.js、Angular.js的不同

结论

这些技术,成就JavaScript大法,全面实现JavaScript语言在Web、桌面、移动、服务器等领域应用。

  • JavaScript是一种脚本编程语言,常用在浏览器前端页面动态效果实现,而Node.js提供一整套服务器端JavaScript运行时环境,使JavaScript语言可以实现类似PHP的服务器端编程。
  • Electron是跨平台的桌面应用开发框架,编程语言是JavaScript,需要Node.js\Chrominum\V8等开源组件支持,使JavaScript能够像.net、java一样可以开发桌面应用。
  • JQuery是纯粹的JavaScript类库,封装常用的JavaScript功能代码,简化原始JavaScript的前端编程,但类库距离实现应用仍需要大量的代码;
  • Vue.js、Angular.js等是前端JavaScript开发框架,快速实现前端Web应用,提供更加简洁的语法,实现HTML的动态效果,对HTML5、移动设备支持较好,重点解决JavaScript通过DOM操作HTML实现动态效果的复杂性。

JavaScript语言

  • JavaScript是解释性脚本语言,具备动态性、弱类型、基于原型(面向对象)等特点;
  • JavaScript重要历史,从历史看语言功能和设计初衷:

    • 1995年,网景在在浏览器Netscape中首次实现,目的是实现网页前端动态效果;随后微软等浏览器厂商均采用模仿实现;
    • 1996,网景提交标准组织ECMA,1997年发布ECMA-262标准,统一语言语法和基本对象;现在最新为ECMASCript 2017;
    • 小插曲:1995.12,网景公司推出Server-side JavaScript,可以运行在Netscape Enterprise Server;
  • 因此,可以得出结论:

    • JavaScript本质上是一种脚本语言和编程语言;运行环境或者解释器是内置在浏览器中的,传统应用领域局限在前端配合网页实现动态效果的;
    • 网景公司很早已经探索将JavaScript变成通用的脚本语言,并且可以用在服务器端,可惜后来在浏览器大战中被打败;
    • JavaScript专注于前端网页动态交互领域,与浏览器紧密相关,脚本解释器内置在浏览器实现中;其它脚本语言提供单独的解释器;
    • JavaScript作为编程语言,提供相应的运行环境(解释器或者编译器),完全可能在服务器端运行,不局限于客户端。

Node.js运行环境

  • Node.js是一个基于Chrome V8引擎的JavaScript运行时环境(2009.,Chrome V8是谷歌浏览器内置的JavaScript脚本引擎(2008.9发布);
    • Node.js是运行环境,提供JavaScript编写服务器程序的独立运行平台,该平台的编程语言是JavaScript;
    • Node.js于2009年创建,距离网景1995年发布第一个JavaScript服务器端运行环境,时隔13年;
    • Node.js平台提供服务器端编程所需要的各种编程库或模块,实现类似PHP、JSP等服务器页面编程技术功能;

Electron桌面应用开发框架

  • Electron提供一整套工具用来开发跨平台的桌面应用,可以开发Windows、Mac、Linux等平台的桌面应用,类似.Net Framework、Java桌面应用开发;
  • Electron平台开发语言是JavaScript,界面采用HTML+CSS实现,运行环境依赖Node.js,Chrominum,V8,Node.js和Chromium共享同一个V8脚本引擎实例;
  • Node.js作为后端运行环境,可以实现网络、文件IO、GUI等系统原生功能;Chrominm+V8作为前端运行环境,可以实现网页和JavaScript脚本的运行显示;
  • Electron可以使用JavaScript调用原生操作系统API来构建桌面应用,在Node.js支持下,实现在网页中直接与操作系统底层API交互。

JQuery是前端JavaScript类库

  • JQuery等是JavaScript类库,本质上只是运用JavaScript编写封装的脚本文件,和我们自己的写JavaScript脚本没有区别,运行在前端,浏览器都支持,不依赖任何库或者组件;
  • JQuery前端库,解决JavaScript编程繁琐等问题,直接将常用的JavaScript功能封装,另外对多版本的浏览器兼容性较好;
  • 使用JQuery,可以方便实现网页的动态效果,但因为仅仅是库,仍需要手工实现大量的JS脚本自己的需求,实现层次仍然较低;
  • 2006年发布。

Vue.js\Angular.js等前端开发框架

  • Vue.js\Angular.js同样是JavaScript编写的前端开发框架,提供类似应用模板,开发者只需要加入自己的业务逻辑,基础的功能框架均已经实现;
  • 因为是前端开发框架,不依赖第三方,只需要浏览器均可以运行;
  • 框架扩展了HTML的功能,弥补HTML构建动态网页的不足,例如Angular.js只利用指令扩展HTML,实现数据与显示等绑定;
  • 使用Angularjs等开发框架,利用声明式的语法(HTML标签中混合JS功能,类似JSP、PHP服务器脚本的写法)可以快速实现常用的数据与显示绑定、验证等Web应用功能;
  • 支持HTML5应用,对移动设备支持效果较好;
  • Angular.js 2009年发布。
  • 11
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值