代码的SIMILAR或ALTERNATIVE块的颜色突出显示

时间:2013-08-03 12:50:27

标签: objective-c

有没有办法在xCode或替代Obj-C程序中突出显示相似或替代的代码块?在附图中,您可以快速了解哪个块在另一个块之后运行,或者哪个块可以替代(if-else)。 (图片上的代码只是示例)。它似乎是与{} -counting相关的任务,所以我希望有一些实现。 实际上,只有在我看到你突出显示之后,我才能理解图片上的代码流。

enter image description here

2 个答案:

答案 0 :(得分:1)

您要求的是范围突出显示。据我所知,Xcode不这样做。但是,您可以将鼠标悬停在左侧的代码折叠列上,并简要查看范围。

答案 1 :(得分:1)

由于这是一种不答案,我最初把它写成评论。但它太长了,所以我把它放在这里。提前道歉以避免这个问题。但我正试图解决背后的问题问题......

如果你必须对方法进行颜色编码以理解它,该方法太长了。 Extract methods并给它们有意义的名称,清楚地说明它们的目的(尽管不是它们的实现)

以下是我遵循的经验法则:

  • 如果方法有许多局部变量或许多不同的缩进,首先使用Extract Class将方法拉入一个用作函数对象的新类。然后将局部变量提升为ivars。
  • 尽管有许多人陈述危险,但如果内部范围有一条线,我省略了大括号。这减少了代码的垂直距离,使其更具可读性。可读性更重要。 (但是如果您的代码不在单元测试中,那么这可能会有风险。所以请确保方法得到很好的覆盖。)
  • 当我在方法中看到大括号时,我会尝试将该部分提取到另一个(命名良好的)方法中。
  • 寻找机会将if语句的内容提取到表达 what 的谓词方法中(隐藏方法中的 )。
  • 我尝试将方法保持在六行之下。除此之外,我开始批评它:它不仅仅是一件事吗?它是在多个抽象级别上运行吗?

关于这些原则的更多内容,我强烈推荐Clean Code episode 3