使用块范围来组织复杂的代码

using block scopes to organize complex code

我正在构建一个 three.js 库,发现在 {} 的注释下方放置注释和嵌套内容可以轻松浏览大量代码。我想知道是否有其他更好的方法来做到这一点。

我为什么要这样做

  1. 主要原因:我可以根据我在块作用域上方看到的注释快速折叠代码。因此 可以轻松地专注于我想要更改的代码。

  2. 我只会在 class 初始化或非常复杂的方法中使用它。或者更确切地说,任何有重要代码使用的区域以及适用于这些区域的标签。

  3. 如果没有适当的评论,我永远不会确定一个部分的范围。

  4. 这有助于我扩展这些不同的部分,特别是如果它们不能扩展成新的 class 或合理范围内的对象

  5. 我知道代码库的一个常见问题是它们可能会让人不知所措,尤其是在学习它们的时候。我认为这种组织代码的方式可以帮助它更容易理解,并且看起来更容易理解

  6. 如果 IDE 中有这样的功能,我会很高兴

使用示例:

已折叠:

未折叠:

已折叠:

未折叠

我也认为这是对重构的 补充 ,无论它是抽象为函数还是更多 classes。这似乎是敏捷的,并且处理了代码库中的不确定性,特别是如果您需要以不符合新 class 或新方法的方式将问题解决方案巧妙地分层。

我认为最好分解成单独的函数。添加不必要的块可能会对未来的维护者产生意想不到的后果。许多编辑器支持在注释中使用特殊语法来帮助代码折叠和导航,而无需更改语法树。

[编辑] 虽然我真的是一个只使用 Emacs 的人 (TM),Vscode 的文档 (https://code.visualstudio.com/docs/editor/codebasics) 提出了一些类似

的建议
//#region