楼主提到的上述开发方法都可以编写程序,并下载到8266中;
NOOS开发方式: 相当于基于裸机开发,NO OS,没有RTOS,常用编程IED是安信可的开发环境。
RTOS开发方式:8266 V3.0版本之后,为了和ESP32统一开发,提供了RTOS开发方式,基于freertos开发,乐鑫官方ESP-IDF (Espressif IoT Development Framework)框架,开发效率上相对于NOOS有所提高,目前乐鑫官方已经停止维护NOOS,所以打算二次开发8266的同学可以选择RTOS方式。
Arduino开发方式:
使用上述乐鑫官方SDK,适配到Arduino中,便可以使用Arduino进行开发ESP8266,直接使用Arduino下载即可。
LUA开发方式:
本质上也是基于乐鑫SDK的WIFI固件,只不过这个固件内置了Lua解析器,相当于SDK在执行的时从lua解析器中加载Lua脚本执行;下载的话使用lua下载IDE即可,常见的是Node MCU固件编程器。
Micropython开发方式:
Micropython和Lua比较类似,也是基于SDK定制C语言固件,加载python语言执行。
综上所述,ESP8266开发方式很多,但是本质上都是基于乐鑫官方的C语言SDK(NOOS/RTOS,推荐RTOS),Arduino lua micropython都是为了降低小白入门成本而生,入门相对简单,特别适合DIY和创客爱好者。