Node.app让Nodejs平台在iOS和OS X系统上奔跑

首先呢,欢迎大家去查看同样内容的链接:http://www.livyfeel.com/nodeapp/。

因为那个平台我用的markdown语法,我也懒得修改了,就这样黏贴过来了。


这是一个惊人的恐怖消息!  

首先个人来介绍一下本文出现的几个知识点:  
####Node.js
Node.js是一个平台,下面简称Node。它用来是前端广为使用的javascript语言,可以在服务器的后端进行奔跑。我们知道,如果一个前端没有CSS和javascript,仅仅依靠HTML来供用户查看页面,是多么撕心裂肺的一件事!既然javascript这样的在前台广受欢迎,那么可不可以让它也能够在服务器的后台中为我们所用呢?所以,有那么一群丧心病狂的程序猴们开始基于Google公司的V8(当前世界上最快的javascript解析引擎)开发出了一个可以在后台奔跑javascript的平台,那就是Node。现在很多很多的公司已经开始使用Node,如我们广为所知的淘宝百度和eBay等。其中淘宝的双十一双十二就有Node的功劳哦。如需要详细信息欢迎Google。
####iOS和OS X
我们最常使用的就是Window系统电脑了。有那么一群人,他们为了炫耀自己的牛逼技术,又为了证明自己的确比别人牛逼,他们使用Linux系统。其中Linux只是一个泛称,它可是一个很大的家族哦,如Ubuntu,CentOS,Deepin等都是著名的Linux系统成员。这群人喜欢使用他们的黑色命令行来装逼!(哈哈,其实只是Linux太好用了,主要做服务器使用。Window做服务器用没几天就挂机了,以前以2003系统做服务器比较常见,而Linux号称“永不死机”,你去有些公司或许看到他们的服务器跑了好多年了都没有关机过,不要觉得太新鲜哦)。停停停,这和OS X有什么关系?哈哈,是这样的。Linux不是石头里蹦出来的,它也是有爸爸的,那就是UNIX。当然了,爸爸不能说他只有一个儿子,OS X也是他儿子。而OS X是电脑端,我们的手机等手持设备就是移动端了,它的系统就是iOS。其实iOS和OS X和Linux家族有千丝万缕的联系,只是因为iOS及OS X生的漂亮,所以比较贵!
####喜闻乐见的爆炸新闻
好了,两个巨人我们介绍完了,下面开始我们的主题!那就是Node.app!  
轻量、高效的Node.js,能够帮助程序员构建高度可伸缩的应用程序。这样一款服务器端的JavaScript解释器,一直以来都颇受Web开发者青睐,在移动开发者心目中的地位也是相当崇高,却又因种种原因对它望而却步。为此,来自德国的开发者Marcus Kida和工程师Sam Rijs共同开发了一款名为Node.app的,专门用于iOS开发的Node.js解释器,并在GitHub上创建了“[Node.js for iOS](https://github.com/node-app/Interpreter)”开源组织,将开发成果完全开放,与来自全球的开发者共同分享。
{<1>}![](http://cms.csdnimg.cn/article/201402/21/5306f6d5227f0_middle.jpg)
Node.app能够为应用程序提供兼容Node.js的JavaScript API,不仅占用资源非常少,而且还允许最大限度的代码重用和快速创新。  
主要特性:


* 最大限度的代码重用:在iOS应用开发过程中,开发者可以直接使用在服务器和前端能可靠运行的代码。
* 数以万计的模块:拥有着非常丰富的模块资源,通过npm,开发者可以使用任意模块。
* 快速创新:Node.app提供了开发者熟悉的Node.js API,使用起来非常方便。
* 占用资源少:通过相同的快速系统功能,使用Node.app就如同标准的iOS代码一样,而用户在使用时,甚至不会注意到它并不是原生应用。
___
好了,上面也是他们[官网](http://nodeapp.org/)的部分介绍,大家可能云里雾中看完之后,下面我和大家按照我理解的进行解析(由于Google上面查看的资料实在太少,而Baidu嘛,呵呵送给它):  


######Node.app是什么?
Node.app嘛,它是一个平台,是基于Nodejs平台完成,也就是说,用的也是V8的解析引擎,用来解析javascript。可以让Javascript代码在这个平台上面奔跑起来。想知道为什么想要Javascript在Node.app上面跑吗?这个吗,你看看前面关于Nodejs的介绍就知道了。  
就是说,Javascript太强大,在前端用实在可惜,所以呢,程序猴子们做了Nodejs平台在服务器后端跑它,用它处理数据。而现在呢?要是能让他在手机上面或者个人电脑上面,在那些客户端应用里面直接跑起来(如QQ拉,FaceBook拉)是不是会更酷?还不明白为什么在客户端中需要他们?我们后面说!  


######好了,我们说为什么需要Node.app这个平台。  
首先嘛,我们知道,任何一个有价值有态度的客户端如网易新闻拉天天动听拉,他们都需要一个强大的后台来支撑(不然你的新闻哪里来啊?你的音乐哪里来啊?)!  
但是呢?一个公司有那么多的用户,一个简单的服务器可不能够处理完用户的数据哦!所以呢,公司会花大把大把的薪水,让猎头抓来许许多多优秀的程序猿们进行服务器端开发。这个时候,许多的Java,C,C++,C#,PHP,Go的开发人员们就有饭吃了,当然也包括Nodejs的开发人员。公司可不止为了这些人花钱哦,对,还有硬件!那么多台服务器啊!想想就是大价钱!我滴个心啊  
哎,那服务器少一些行不行?呵呵,数据可是需要最基础的集群处理的,服务器相互之间要紧密连接在一块,这样一来数据可以在不同的服务器不同的硬盘之间同步备份,不至于一个服务器爆了,一个硬盘换了,用户不能使用产品了!就这么一个基础的数据处理,服务器就不能少吧?什么?你用户就几个人?先让我喝杯水先!  
好了,这样一来,我们可以发现,用户的数据处理,都是我们的服务器来完成的。对于那么多的用户,这可不是一个小的服务器负担啊!哎呀,累死了!那么,如果,可以让用户自己的设备进行数据的处理,而不是由服务器来完成,那样不就可以大大的减轻服务器的开支了吗?这是当然,所以现在,越来越多的应用开发商们,把数据的处理,让客户端去做,而不是服务器来做。如:服务器把一长串的JSON数据传给客户端让客户端自己处理,总不能JSON数据也是让服务器解析好,然后一条条的给客户端传过去吧?  
既然减轻服务器的处理增加客户端的处理已经行驶在路上了,那这条路也一定会越来越明朗。所以Node.app出来了。是的!Node.app是什么?是平台!平台用来干嘛?解析javascript!javascript用来干嘛?呵呵,那你说服务器运行Nodejs是干嘛的呢?所以说,我们可以把服务器上面的很多很多很多操作,释放到客户端去,Node.app可是一个后台啊!用Node.app来处理数据为客户端所用,不是太方便了嘛!后台的数据处理,那就一个减轻啊  
######那Node.app相当于一个后台的数据处理库了,在客户端上面进行数据处理会不会拖慢设备的运行速度啊?  
当然,答案也是肯定的!不会哦!还是回到老话题,Node.app是用来跑javascript的平台,javascript的小巧众所皆知!在服务器端的Nodejs处理大数据都游刃有余何况还有Google的号称世界最快的V8引擎做支撑呢(什么?有V8护驾?:(:(:(....不早说)
######Node.app平台处理数据,难道真的javascript这样的强大吗?  
是的!不仅javascript强大,javascript的目前可是有112,384个强大的类库做支撑哦(截止时间2014-12-15,查看地址:[npmjs](https://www.npmjs.com))!所有的Nodejs能够用的库在Node.app上面都能够使用,哈哈,强大吧!
######太开心太恐怖了,我现在就要去用它
呵呵,不要太心急哦。我看了,现在,这个Node.app还是一个概念机处于实行阶段呢!我安装了他们的手持客户端的Demo,果然可以搭载运行javascript。  
![](https://camo.githubusercontent.com/d807513085a4846d1f7e7f051fbff7cf7e097f8c/68747470733a2f2f7261772e6769746875622e636f6d2f6e6f64652d6170702f496e7465727072657465722f6d61737465722f64656d6f2e706e67)  
可是呢?现在还是不成熟,估计没有几个公司敢大范围的使用它吧!哎,比较扫兴的结尾了,不过,如果你感兴趣,那就快来参加Node.app的代码维护吧[Interpreter](https://github.com/node-app/Interpreter),像这样的东西,大家维护才有成就感嘛,或许过不了多久,大家就可以使用他了。  

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。