arduino / arduino/ArduinoCore-API

Please consider refining (reorganizing/documenting) core headers to aid in their explicit inclusion ...

未关闭
#121 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看
主要语言
C++
星标
306
派生
150
PR 合并指标
30 天内没有已合并 PR

描述

(I don't know if this is the correct place to begin this discussion, but if wrong please move it.)

Specifically I believe the current Arduino development environment is hurting beginners by hiding the inclusion of critical header files, which actually define the API's which programming relies upon, and who's inspection should be encouraged to aid beginners more easily understand why ideally well documented functions must be called with certain argument orders and types for example. Please consider reorganizing and refining Arduino's core library/environment header / implementation specification to allow it to more easily serve as a coherent reference to aid in its use; as also further supported by the following proposed changes:

- change default new project stationary to include "#include ", which need not be equivalent to "Arduino.h", although will likely include it among other base library headers, defining the base Arduinio API.

- initially continuing to support their magical inclusion behind the scenes, and thereby not breaking anything for existing projects, but beginning the transition to a requirement for its explicit top-level inclusion.

- add a feature to the IDE to make it easy to open and view included baseline headers, and those from optionally supported libraries (but possibly kept read-only by default, so beginners don't mistakenly modify them).

- in turn the source code can then be parsed to determine the code's corresponding library dependency required for compilation and linking, etc.

All visible to the user, as hiding such critical information typically hurts more than helps even, if not especially, beginners understand what's going on and why, in practice.

贡献指南

这个仓库没有索引到贡献指南

调研方向

该 issue 未指出具体的文件或测试。先查看 ArduinoCore-API 的核心头文件,以及 Arduino IDE 对默认项目和头文件包含行为的处理方式,然后与维护者明确范围。完成这项工作需要就显式的基线头文件、保留现有项目、IDE 检查头文件以及依赖发现达成一致方案。

由索引模型根据 Issue 内容生成。

评估

技术栈
cpp
领域
api, embedded-iot
Issue 类型
功能
难度
5/5
预计耗时
一周以上
活跃度
停滞
描述清晰度
需要澄清
新手友好度
25/100

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。