文档章节

关于MicroPython是否可以真正用在产品开发的讨论

shaoziyang
 shaoziyang
发布于 2017/03/08 01:07
字数 774
阅读 293
收藏 2
点赞 1
评论 4

这几天,在MicroPython官方论坛上,发起了关于MicroPython是否可以真正用在产品开发上(Is MicroPython ready for real world deployment)的讨论,非常有趣。我觉得值得大家看看,所以简单的翻译和整理了一下。

问:
If I wanted to deploy a large number of devices and have them run reliably, would MicroPython be a risky choice?
在设备上运行MicroPython是否可靠?

答:
We are using Micropython in several projects (medical & industrial certified measurement equipment) for ~2 years. It was a bold decision, but it already paid off.

有网友回答说:我们在多个项目中(医疗和工业测量认证设备)使用Micropython超高2年了。这是一个大胆的决定,但是它已经得到了回报。


坏处:

  • 提升了硬件资源需求
  • 缺乏面向对象的编程技能


好处

  • 开发效率
  • 可追溯性
  • 可测试性
  • 可移植性
  • 许可和支持(开源)



问:
don't the other benefits  exist for C/C++ (with or without an widely used OS/RTOS) ? e.g. clang or gcc, FreeRTOS, etc?
是否有其他类似C/C++的功能?如 clang或gcc、FreeRTOS等

答:
MPY outperforms all the tools we know (even the ones we can't afford) for our application portfolio and a broad range of different MCU types. We came to MPY while searching for a lightweight python implementation for a linux based system to get rid of bloated shell scripts. 
对我们的应用程序以及广泛的不同的单片机类型,MPY优于我们知道的所有工具(甚至包括买不起的)。我们为了摆脱臃肿的shell脚本,在寻找基于linux系统的轻量级的python时发现了MPY。


For this first project it ended up with getting rid of linux replacing it with MPY. Two years later we cover ultra low power systems (consuming 500nA with active REPL!) to real-time image processing, all with just one development and runtime environment.
对于第一个项目最终用MPY取代了linux。两年后我们实现了超低功耗系统(包括REPL仅消耗500 nA)进行实时图像处理,使用同一个开发和运行环境。

I'd say problems with the uPy side of things are extremely rare and the API is also very stable, and even if there is a bug or feature missing the fix takes a couple of days at most (either fix by main devs or time to get PR merged).
对于uPy我想说的是问题非常少和API也非常稳定。即使发现了一个bug或功能缺失,修复也最多需要几天(包括主要开发者修复和PR合并时间)

Frankly I don't think there are many other scripting language implementations out there that work as good for the pros mentioned by chuckbook already.
坦率地说,我不认为还有其他脚本语言可以像chuckbook提到的一样好。

Lua is ok but it's not Python. CPython works but good luck getting it to compile on non-pc or embedded pc hardware. Or trying to understand the code. C and C++ are tried and tested and pretty awesome if yo know how to use them properly, but are not scripting languages at all.
Lua不错但不如Python。CPython可以使用,但是需要在个人计算机或嵌入式pc硬件上编译、理解代码。C和C++久经考验,非常不错,但是你需要知道如何正确地使用它们。
 

© 著作权归作者所有

共有 人打赏支持
shaoziyang
粉丝 11
博文 75
码字总数 25881
作品 0
武汉
程序员
加载中

评论(4)

shaoziyang
shaoziyang

引用来自“shangwudong”的评论

”Lua is ok but it's not Python“ 这句话翻译过来是这个意思么?
“Lua不错但不如Python”,
Lua不能说不好,但是用的人不多。
s
shangwudong
”Lua is ok but it's not Python“ 这句话翻译过来是这个意思么?
“Lua不错但不如Python”,
狼锋
哦哦
此去经年Kwan
此去经年Kwan
444
MicroPython入门:能跑MicroPython开发板大盘点!

相信对于很多刚刚接触MicroPython的DIY创客来说,首先是被一些大神的作品吸引,然后有冲动自己动手,却发现入门很难,特别是面对各式各样的开发板不知如何选择。目前市面上关于MicroPython开...

bodasisiter
07/06
0
0
人生苦短,用 RT-Thread MicroPython 享受编程的乐趣

在 i.MX RT1050 EVK 开发板上实现这样的一个读取板载的 6 轴传感器信息和系统 CPU 利用率等信息,实时显示到网页中效果,你猜需要多少代码? 事实上 RT-Thread 的同事利用 RT-Thread MicroP...

RTThread物联网操作系统
05/02
0
0
Micropython TPYBoard拼插编程之按键控制LED灯

一、什么是TPYBoard开发板 TPYBoard是以遵照MIT许可的MicroPython为基础,由TurnipSmart公司制作的一款MicroPython开发板,它基于STM32F405单片机,通过USB接口进行数据传输。该开发板内置4...

bodasisiter
04/18
0
0
TPYBoard—MicroPython开发板免费试用!你最想抱走哪款?

  TPYBoard开发板自上市开售以来,受到了广大硬件及MicroPython爱好者的一致好评,许多人提出想试用开发板的申请。为此,TPYBoard特推出多款开发板免费试用活动,感兴趣的朋友抓紧申请吧!...

bodasisiter
2017/10/24
0
0
[Micropython]TPYBoard v10x拼插编程实验 点亮心形点阵

一、什么是TPYBoard开发板 TPYBoard是以遵照MIT许可的MicroPython为基础,由TurnipSmart公司制作的一款MicroPython开发板,它基于STM32F405单片机,通过USB接口进行数据传输。该开发板内置4...

bodasisiter
04/17
0
0
精彩源于起点——2018年潍坊市首次青少年Python编程公开课

有一种语言叫计算机语言 I want to talk with Computer 春遇到冬,有了岁月 天遇到地,有了永恒 我们拥有的, 不止是长大, 还有那份长大的悲欢经历。 未来会有很多可能, 但一切源于万象开始...

bodasisiter
05/07
0
0
RT-Thread 软件包介绍

1、软件包的目的 软件包在高级语言中非常常见,很多高级语言都有对应的软件包平台,比如 Python 的 PyPi,Ruby 的 Gems 等等。软件包生态对于一门语言的选择至关重要,因为这些软件包具有很强...

RTThread物联网操作系统
05/17
0
0
Micropython之萝卜狗远程门禁控制系统

  * 本文作者:_橙子 ゝ,本文属FreeBuf原创奖励计划,未经许可禁止转载   当代社会,我们进公司需要门禁卡,出入小区需要门禁卡,门禁系统又称出入管理控制系统(ACCESS CONTROL SYSTEM)...

FreeBuf
05/24
0
0
第一款Micropython图形化编辑器—Python Editor

当你看到这篇文章的时候,显然你已经阅读了很多类似的文章,那么本篇文章会深入讲解一些新手的需求,提供详细的建议,当然我不会告诉你具体怎么做,一切答案都是肤浅的。 就拿我自己来说,初...

bodasisiter
04/23
0
0
Micropython TurnipBit的蓝牙使用

为了部落 什么是TurnipBit开发板 TurnipBit开发板由TurnipSmart公司制作的一款MicroPython开发板,基于nrf51822芯片为主控芯片,以MKL26Z128VFM4芯片作为边载辅助芯片,板载5*5LED灯,板载加...

bodasisiter
05/19
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

命令

sudo nginx -s reload 重启nginx sudo lsof -i -P | grep -i "listen" 查看端口占用

那个猴子
6分钟前
0
0
用scrapy-redis爬去新浪-以及把数据存储到

需求:爬取新浪网导航页(http://news.sina.com.cn/guide/)所有下所有大类、小类、小类里的子链接,以及子链接页面的新闻内容。 准备工作: a.安装redis(windows或者linux) b.安装Redis Des...

丁典
6分钟前
0
0
PHP常用函数篇

1.为什么要使用函数? 除了内建的PHP函数,我们可以创建我们自己的函数。 函数是可以在程序中重复使用的语句块。 使代码逻辑更清晰 避免过多的全局变量 封装后避免相同逻辑重复代码,只需调用...

天地有涯风有信_大海无量不见人
7分钟前
0
0
对List分组

在日常工作中会遇到这样的情景,我们需要对List按照List中对象的一个值进行分组。比如一个Human的List,我们要根据性别分组,传统的方法是做双层循环,逐个对比,今天我要介绍一种详单简单的...

珂jack
9分钟前
0
0
分析jquery ajax jsonpCallback回调函数名包含点号报错问题

现象 项目中涉及到跨域请求,采用jquery ajax jsonp来实现,但是遇到一个奇怪问题,在设置回调函数名称时,若包含点号,如“Callback.Success”,那么执行完成后,其error回调函数始终会被触...

iwaller
12分钟前
0
0
【Graphql实践】使用 Apollo(iOS) 访问 Github 的 Graphql API

最近在协助调研 Apollo 生成的代码是否有可能跨 Query 共享模型的问题,虽然初步结论是不能,并不是预期的结果,但是在调研过程中积累的一些经验,有必要记录下。如果你也对 Graphql 感兴趣,...

ios122
13分钟前
1
0
聊聊spring cloud的AsyncLoadBalancerAutoConfiguration

序 本文主要研究一下AsyncLoadBalancerAutoConfiguration AsyncLoadBalancerAutoConfiguration spring-cloud-commons-2.0.0.RELEASE-sources.jar!/org/springframework/cloud/client/loadba......

go4it
22分钟前
0
0
10.19 iptables规则备份和恢复 ,firewalld的9个zone,service的操作

保存和备份iptables规则 内容: 保存iptables规则 service iptables save 把iptables规则备份到my.ipt文件中: iptables-save > my.ipt 恢复刚才备份的规则: iptables-restore < my.ipt 1.......

Linux_老吴
24分钟前
0
0
Vue 自动化表单相关资料

1.使用vue自动化表单 2.Vue可视化,Vue代码生成,Vue动态表单 3.前端表单进阶之路:通过 Vue.js 实现表单可配置化 4.使用Vue动态生成form表单 5.autoform-devtool 6.Vue.js实践:实现多条件筛...

IT追寻者
25分钟前
0
0
动态SQL

一、动态SQL 1、if <select id="findActiveBlogWithTitleLike" resultType="Blog"> SELECT * FROM BLOG WHERE state = ‘ACTIVE’ <if test="title != null"> AND title l......

一个yuanbeth
28分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部