使用块范围来组织复杂的代码
using block scopes to organize complex code
我正在构建一个 three.js 库,发现在 {} 的注释下方放置注释和嵌套内容可以轻松浏览大量代码。我想知道是否有其他更好的方法来做到这一点。
我为什么要这样做
主要原因:我可以根据我在块作用域上方看到的注释快速折叠代码。因此 可以轻松地专注于我想要更改的代码。
我只会在 class 初始化或非常复杂的方法中使用它。或者更确切地说,任何有重要代码使用的区域以及适用于这些区域的标签。
如果没有适当的评论,我永远不会确定一个部分的范围。
这有助于我扩展这些不同的部分,特别是如果它们不能扩展成新的 class 或合理范围内的对象
我知道代码库的一个常见问题是它们可能会让人不知所措,尤其是在学习它们的时候。我认为这种组织代码的方式可以帮助它更容易理解,并且看起来更容易理解
如果 IDE 中有这样的功能,我会很高兴
使用示例:
已折叠:
未折叠:
已折叠:
未折叠
我也认为这是对重构的 补充 ,无论它是抽象为函数还是更多 classes。这似乎是敏捷的,并且处理了代码库中的不确定性,特别是如果您需要以不符合新 class 或新方法的方式将问题解决方案巧妙地分层。
我认为最好分解成单独的函数。添加不必要的块可能会对未来的维护者产生意想不到的后果。许多编辑器支持在注释中使用特殊语法来帮助代码折叠和导航,而无需更改语法树。
[编辑]
虽然我真的是一个只使用 Emacs 的人 (TM),Vscode 的文档 (https://code.visualstudio.com/docs/editor/codebasics) 提出了一些类似
的建议
//#region
我正在构建一个 three.js 库,发现在 {} 的注释下方放置注释和嵌套内容可以轻松浏览大量代码。我想知道是否有其他更好的方法来做到这一点。
我为什么要这样做
主要原因:我可以根据我在块作用域上方看到的注释快速折叠代码。因此 可以轻松地专注于我想要更改的代码。
我只会在 class 初始化或非常复杂的方法中使用它。或者更确切地说,任何有重要代码使用的区域以及适用于这些区域的标签。
如果没有适当的评论,我永远不会确定一个部分的范围。
这有助于我扩展这些不同的部分,特别是如果它们不能扩展成新的 class 或合理范围内的对象
我知道代码库的一个常见问题是它们可能会让人不知所措,尤其是在学习它们的时候。我认为这种组织代码的方式可以帮助它更容易理解,并且看起来更容易理解
如果 IDE 中有这样的功能,我会很高兴
使用示例:
已折叠:
未折叠:
已折叠:
未折叠
我也认为这是对重构的 补充 ,无论它是抽象为函数还是更多 classes。这似乎是敏捷的,并且处理了代码库中的不确定性,特别是如果您需要以不符合新 class 或新方法的方式将问题解决方案巧妙地分层。
我认为最好分解成单独的函数。添加不必要的块可能会对未来的维护者产生意想不到的后果。许多编辑器支持在注释中使用特殊语法来帮助代码折叠和导航,而无需更改语法树。
[编辑] 虽然我真的是一个只使用 Emacs 的人 (TM),Vscode 的文档 (https://code.visualstudio.com/docs/editor/codebasics) 提出了一些类似
的建议//#region