Ngui简介这是一个GUI排版显示引擎,也是一个跨平台的GUI应用开发框架,基于NodeJS/OpenGL,也是第一款移动端Android/iOS结合NodeJS的前端GUI项目,至此JavaScript成为真正意义上的前后端通吃的语言。Ngui的目标:在此基础上开发GUI应用程序,既能兼顾Native应用程序的性能和体验,又能拥有开发WEB应用程序的简单和速度。开源跨平台移动项目Ngui【介绍】开源跨平台移动项目Ngui【入门】开源跨平台移动项目Ngui【视图和布局系统】开源跨平台移动项目Ngui【Action动作系统】开源跨平台移动端项目Ngui【CSS样式表格规则及使用】NguiAPI文档Benchmark自项目第一版发布以来已经发布了一段时间。虽然做了benchmark测试,但是这段时间忙于找工作和外包,并没有把测试结果给大家汇报。总体测试结果还是比较满意的,基本达到了开发这个库的初衷,但是也有不足之处。在iPhone6上创建100,000个Div并设置相关属性需要10多秒,但是这个时间在Android上会减少到1/2,因为Android使用V8,而iOS使用JSC,使用glueLayer粘在V8的API上,所以JS性能不如安卓。对于2D图形,GPU不是主要瓶颈。主要瓶颈是CPU,但还有很大的优化空间。测试主要针对图形,包括JS调用API的时间开销、图形渲染的帧率、CPU的运行百分比。文件IO和网络的测试比较少,这里就不做表态了,因为库本身是基于NodeJS的,基本没有变化。NodeJS的名字相信大家都不陌生。以下数据是iPhone6、GoogleNexus6和iPadmini2的测试结果。注意以下时间单位是毫秒,CPU配比是按单核计算的。100%表示CPU核心已满载。还有一点需要注意的是,在画面没有变化的情况下,CPU占用率一般在1%左右。View在全屏Scroll视图中创建10万个Div视图,然后滚动Scroll查看CPU占比和屏幕刷新率。Div视图是自动布局的,因此100,000个Div不会同时出现在屏幕上。这里主要测试Dom的运行,视图的排版布局,绘图性能。设备Div数量创建时间FspCPU占比iPhone61000012576045%Nexus6100006706048%iPadmini21000012696060%iPhone62000024576058%Nexus62000012656070%iPadmini22000024606090%iPhone65000061624897%Nexus65000029873997%iPadmini25000059594297%iPhone6100000126472597%Nexus610000058592097%iPadmini2100000119642297%这是iPhone6截图:下面是主要的测试源码:newGUIApplication({multisample:2}).start(
