停止重写代码,使用Xcode代码段

让我们面对现实吧,在编写iOS应用程序时,您会一遍又一遍地遇到相同的委托和数据源方法。 您写了多少次:

 扩展ViewController:UITableViewDataSource { 
  func tableView(_ tableView:UITableView,numberOfRowsInSection部分:Int)-> Int { 
// ...
}
  func tableView(_ tableView:UITableView,cellForRowAt indexPath:IndexPath)-> UITableViewCell { 
// ...
}
  //更多数据源方法 
  } 

在我的工作中,我从头开始编写了许多应用程序,这意味着很多相同的样板代表和数据源方法被多次编写。

无需一遍又一遍地编写相同的代码,您可以将存根代码的分组捆绑在Xcode代码段中。 您可以在“ Xcode实用工具”窗格的底部找到“代码片段”:

什么是代码片段?

您可能已经在Xcode编辑器中与代码段进行了交互,甚至没有意识到。 例如,尝试启动一个while循环,Xcode应该为您自动完成它,并使用占位符来填充while循环的conditionbody 。 在让Xcode生成此占位符时,您仅使用了内置的代码段!

创建代码片段

首先,创建自己的代码片段的步骤并不十分清楚,但我将向您展示如何。 首先,您需要编写使用代码段时想要生成的代码。 因此,希望这将是您最后一次编写UITableViewDataSource扩展!

在为代码段编写代码之后,突出显示代码段,然后将其拖放到“代码段”部分。

这将打开一个对话框,您可以在其中编辑代码段的以下详细信息:

  • 标题和摘要 -名称,用于描述代码片段的功能,这些内容将显示在代码片段库中。
  • 平台 -您的摘录可用于哪个平台(iOS,macOS,watchOS等)。
  • 语言 -您的代码段使用哪种编程语言编写。
  • 完成快捷方式 -这是您必须在Xcode编辑器中键入的内容才能调用您的代码段。 确保这是简短易记的内容。
  • 完成范围 -这是您的代码段可用的范围。 例如,我将协议一致性写为对类的扩展,这意味着完成范围位于Top Level 。 如果您希望能够在类范围内调用代码段,请选择Class Implementation 。 通常,这是根据您从中拖动代码的范围预先选择的。

在代码片段中创建占位符

您可能还注意到,当我将代码段拖到库中时,在扩展名后才有了类名。 您不想每次都删除它并用您的类名替换它。 您将要使用一个占位符!

类名占位符

为了创建一个占位符,请编辑您的代码段并将类名包装在<##> ,如下所示:

   

现在,您可以停止编写相同的样板代码,并开始编写更多代码段!

谢谢阅读! 如果您喜欢这篇文章和/或觉得它很有用,请👏与朋友分享! 😄