简而言之,Ruff 是一套软件,树莓派是一个硬件,只不过,Ruff 是为了开辟硬件运用而设想的。
从设想初志谈起
Ruff 是为了开辟运用而设想,所以,其目标用户是开辟者。
树莓派最初是为了教授教养目标供应的小电脑,其目标用户是初打仗电脑的使用者。
恰是设想目标的差别,Ruff 的事情都是为了改良开辟者体验,比方,其供应的软件包治理、自动化测试框架、命令行东西等等。而树莓派须要使用者像拿到一台新电脑一样,设置操作系统,装置软件等等。
两者之所以会被放在一同比较,主要是由于有一些开辟者在尝试用树莓派做硬件运用,这些人通常是软件极客,所以,他们也是 Ruff 的目标用户。
抛开把树莓派当作电脑的用处,这里只谈硬件运用开辟的部份。
开辟对照
假如要用树莓派做开辟,你要做的是寻觅响应的软件开辟包,然后,进修硬件编程的观点,比方:GPIO、I2C 等等,还要浏览数据手册,进修编写驱动,然后,才有可以最先本身的运用开辟。
用 Ruff 做开辟,你要做的是找到本身要用的外设,在命令行里增加外设,编写本身的运用。
你已看出了个中的差别,假如你是一个没有硬件背景的人,明显,Ruff 上手更快,这是由于 Ruff 供应了一层软件笼统。软件开辟者都邑晓得一个好的笼统关于临盆力的提拔。恰是由于笼统,才有了从机器码到汇编、到 C 言语、到面向对象等一系列提高。
另外,Ruff 还供应了一系列配套东西,比方,前面提到的软件包治理、自动化测试框架、命令行东西等方面,让你可以做一个正式的开辟,而不单单议做一个玩具。
硬件对照
实在,Ruff 不是一个硬件,但 Ruff 有一个开辟套件,用以下降开辟人员上手的门坎。
从硬件设置上说,树莓派是有绝对优势的,Ruff 开辟套件要弱一些。两者的差别正好回应了设想初志的差别。树莓派要做电脑,假如太弱了,许多功能做不了,而 Ruff 开辟套件是为了做硬件运用,太强了反而不能表现实在的场景。
Ruff 的设想就有一个主要目标:进军临盆。尽人皆知,在真正的硬件开辟中,本钱是一个主要的要素,而硬件设置和本钱密切相关。
Ruff 开辟套件假如机能太强,它就不会在实在场景落地。举个例子,假如采纳树莓派做为出发点,有可以 JavaScript 运转时会挑选 Node.js,而 Node.js 是很难向更小的硬件上移植的。具体分析以下:
Duktape 和 V8有什么区别,为何做的这么小? – 郑晔的回复
现在,Ruff 的研发正在朝着临盆环境行进,比方,基于 MCU 的版本,这个版本的芯片和内存将更小,但这也更切近实在的环境。
末了,假如你有树莓派,保留好,Ruff 很快就可以运转在树莓派上。由于 Ruff 是一套软件,树莓派是一个硬件,而 Ruff 是为了开辟硬件运用而设想的。