资讯专栏INFORMATION COLUMN

Ruff 和 Raspberry Pi 的区别是什么?

caspar / 3059人阅读

摘要:树莓派最初是为了教学目的提供的小电脑,其目标用户是初接触电脑的使用者。从硬件配置上说,树莓派是有绝对优势的,开发套件要弱一些。举个例子,如果采用树莓派做为起点,有可能运行时会选择,而是很难向更小的硬件上移植的。

简而言之,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 是为了开发硬件应用而设计的。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/79660.html

相关文章

  • 【物联网】14.物联网设备控制器选择 - MCU(单片机)

    摘要:这部分就是我之前分享过很多的单片机部分,具体可以参考专栏物联网设备的控制单元核心就是,也就是常说的单片机。对于物联网设备,根据开发环境想制造的设备以及经验的不同,选择不同的控制芯片也就至关重要。 这部分就是我之前分享过很多的单片机部分,具体可以参考专栏 https://blog.csdn.n...

    UCloud 评论0 收藏0
  • 极客爱情: 情人节礼物大作战

    摘要:故而总结如下编成的代码浪漫的环境亲手制作的礼物注意请将下面的程序员的情人节礼物换成语言。言归正传程序员的情人节礼物入门之材料构思情人节礼物之设备展示想着在这个移动盛行的时代,再用电脑就不太合适了。 是时候应该反击了 当我看到@鄢得諼草 的那几篇黑我黑到体无完肤的#极客爱情# @Phodal 故事的时候,我发现我竟无言以对。或许,作为一名程序员,我们或多或少都有这样的共性。 ...

    XGBCCC 评论0 收藏0
  • JavaScript在物联网中应用

    摘要:定律在那篇最流行的编程语言能做什么里,我们列举了在不同领域的使用情况,今天让我们来详解一下在物联网中的应用。这个硬件层决定了物联网应用比应用更加复杂。这时,我开始关注实现物联网应用的可能性。 凡是能用JavaScript写出来的,最终都会用JavaScript写出来。 —— Atwood定律 在那篇《最流行的编程语言JavaScript能做什么?》里,我们列举了JavaScript在不...

    aaron 评论0 收藏0
  • JavaScript在物联网中应用

    摘要:定律在那篇最流行的编程语言能做什么里,我们列举了在不同领域的使用情况,今天让我们来详解一下在物联网中的应用。这个硬件层决定了物联网应用比应用更加复杂。这时,我开始关注实现物联网应用的可能性。 凡是能用JavaScript写出来的,最终都会用JavaScript写出来。 —— Atwood定律 在那篇《最流行的编程语言JavaScript能做什么?》里,我们列举了JavaScript在不...

    Barrior 评论0 收藏0
  • Raspberry Pi 2 Model B Pi4J 示例

    摘要:创建控制器实例引脚编号图提供的针脚下面的示例演示如何设置输入。输入的引脚针脚程序会监视状态更改或审问时所需的状态。输入的引脚用于开关传感器等。输出引脚用于控制继电器发光二极管晶体管等。 创建GPIO控制器实例 final GpioController gpio = GpioFactory.getInstance(); 引脚编号图 showImg(/img/bVzmY4); Provi...

    chanthuang 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<