来体验一下2019
年最快的Javascript
框架:
速度是纯nodejs
的2
倍,更不用说其他依赖nodejs
的框架例如express/koa/hapi
了,根本不值一提,不但如此,性能还能吊打spring
以及一众php7
框架。
百闻不如一见,下面我们就来安装尝鲜:
npm install -g es4x-pm
这就装好了。下面我们来用它创建一个项目,新建一个空文件夹,然后:
es4x init
项目就建好了。
我们需要写一个最简单的index.js文件:
console.log('hello')
直接启动吧:
yarn start
嗯,报了个错误:
error package.json: Name can't start with a dot
我们package.json
里的名字不能只是一个点,得改一下:
"name": "hello",
再次启动,还是启不起,哦,我们还没有安装依赖:
yarn add @vertx/core
这样就能运行了,但是会报一个警告:
ES4X is using graaljs in interpreted mode! Add the JVMCI compiler module in order to run in optimal mode!
对于我们这样有洁癖的人不能忍受啊。
这是因为我们现在系统环境里的Java
还是个旧的Java
,而Oracle
最新推出的Graal
才是最新最好的Java
,所以我们先安装一下Graal
:
brew cask install graalvm/tap/graalvm-ce
再次执行yarn start
现在警告也没有了,一切顺利!
试着写点ES6
的语法:
const a = () => {
console.log('hello')
}
a()
一样可以顺利执行!
再往后就是生成http
服务器,连接mysql
等等,这些就跟其他框架大同小异了,不再细讲。
原理
我始终认为,用什么语言根本就是无所谓的,只有外行才讲什么语言是最快的。JS
慢只是因为底层的Node
慢,而Node
的V8
引擎又不是拿JS
写的,而是拿C++
写的。
现在的这个es4x (中文文档)它一样能解释JS
语言,只不过它的底层换成了Java
,用的是Eclipse
的Vert.x技术,而原生的Vert.x
技术用的是Java
旧版引擎,对ES6
支持不好,换成Oracle
最新的GraalVM就一切都解决了。当然也不能就此说C++
比Java
慢,那样你就又浅薄了。
有人抬杠说JS
不能写操作系统底层,有什么不能写的?无非就是个语言而已,你把它编译成二进制就什么都能干了,没听说过nexe吗?
学了编译原理,你就知道语言是什么根本不重要。会说中文的没有必要看不起会说英文的,会说英文的没有必要看不起会说中文的,什么语言好,放在工程项目当中,重要的只是生态,其他都没有可比性。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。