博主信息
博文
18
粉丝
0
评论
0
访问量
1832
积分:0
P豆:38

Xcode中代码注释编写的一些小技巧

2022年01月14日 20:05:31阅读数:108博客 /

目录
前言
Objective-C的代码注释
Swift的代码注释
Objective-C和Swift的注释风格现在已经统一
快速修改注释
参考文档
总结
前言
码农总是在搬砖,日复一日,年复一年,有的时候都会麻木。

代码大家都会写,但是把注释写好却是一个技术活。

下面这段话,很好的说明了写好注释的感觉:

注释代码很像清洁你的厕所——你不想干,但如果你做了,这绝对会给你和你的客人带来更愉悦的体验。—— Ryan Campbell

今天给大家聊的就是在Xcode中,代码注释编写小技巧。

Objective-C的代码注释
很久很久以前,在Xcode还可以安装插件的时代,iOSer都通过VVDocument来编写代码注释的。

代码注释的风格一般都是这样的,代码出自IQKeyboardManager/IQBarButtonItem
`#import <UIKit/UIBarButtonItem.h>

@class NSInvocation;

/*
IQBarButtonItem used for IQToolbar.
/

@interface IQBarButtonItem : UIBarButtonItem

/*
Boolean to know if it’s a system item or custom item
/
@property (nonatomic, readonly) BOOL isSystemItem;

/**
Additional target & action to do get callback action. Note that setting custom target & selector doesn’t affect native functionality, this is just an additional target to get a callback.

@param target Target object.
@param action Target Selector.
*/
-(void)setTarget:(nullable id)target action:(nullable SEL)action;

/*
Customized Invocation to be called when button is pressed. invocation is internally created using setTarget:action: method.
/
@property (nullable, strong, nonatomic) NSInvocation *invocation;

@end
`OC的注释是通过/* /这样的形式进行编写的。

分隔符使用的是这种风格:

  1. #pragma mark - 这个是一个分割符

需要注意的是这个-非常的重要,通过这个-,在查看代码的时候,可以生成分隔线,让代码结构看的更为清晰。

Swift的代码注释
随着Swift语言发布,在Swift中编写注释的风格就所有不同了:
` extension NSObject {

  1. /// 对象获取类的字符串名称
  2. public var className: String {
  3. return runtimeType.className
  4. }
  5. /// 类获取类的字符串名称
  6. public static var className: String {
  7. return String(describing: self)
  8. }
  9. /// NSObject对象获取类型
  10. public var runtimeType: NSObject.Type {
  11. return type(of: self)
  12. }
  13. /// 这是一个例子函数
  14. /// - Parameter arg:
  15. /// - Parameter argument: 传入Int类型的参数
  16. /// - Returns: 返回Int类型的参数
  17. public func afunction(argument: Int) -> Int {
  18. return argument
  19. }
  20. }`

Swift的注释是通过/// 这样的形式进行编写的。

分隔符使用的是这种风格:
//MARK: - 绑定

Swift中的//MARK:这个-也是起到生成分隔线的作用。

Objective-C和Swift的注释风格现在已经统一
如果你现在通过alt+cmd+/在OC和Swift中编写注释的时候,就会发现现在的注释都变成了Swift的这个中风格了:

我个人建议是:以前代码注释就让它去吧,现在就都是用这个统一风格。

快速修改注释
一个函数写好了,注释也写好,但是有的时候计划没有变化快,函数添加了新的参数,这个注释难道要手动添加?

别急,其实Xcode也为我们提供了快捷方式,我们继续看例子,这个函数我在之前的基础上添加了一个num参数,但是注释还是之前的样子:

cmd+鼠标左键点击,我们可以看到左侧出现了一个菜单,点击Add Documentation

我们需要添加的参数它就来了,这样就可以直接添加注释了。

大家有兴趣可以把菜单的选项都点击试试,也许有意外的惊喜,比如Convert Function to Async,await/async。

参考文档
VVDocumenter

总结
从VVDocument到注释的统一,Xcode一直都在做改进,虽然依旧不尽人意。

但是写好注释,也算是码农的一个基本素养吧,大家加油修炼

版权申明:本博文版权归博主所有,转载请注明地址!如有侵权、违法,请联系admin@php.cn举报处理!

全部评论

文明上网理性发言,请遵守新闻评论服务协议

条评论
  • 2021-05-11

    309

    在html就是对和说明,其目是让人们能够更加轻松地了解程序时,程序人给个语句、程序段、函数等或提示,能提高程序可读性。
    标签在作用非常大,好标签可以让你在程过程有更好、更舒适体验,所以我今天准备整理下这标记,通过图文形式展示出来,方面是为了自己对这标签有个汇总整理...
    给初生牛犊不怕虎童鞋们,大佬可随意摘看,本章基于PHP Laravel,经常会有人问目录如何设计比较好? 如何分布好? 怎么个可维护项目? “烂”项目我也没少,本文将提供
    这篇文章主要是想和大家起学习下,工作之有哪让我们眼前JavaScript简洁。有需要朋友可以看看,起学习讨论。
    python要声明原因:1、python行,目就是指出这个文件用什么可执行程序去运行它;2、如果要在python2py文件里面文,则必须要添加行声明文件,否则python2
    开发者通常以质量来定义。在软件行业,意味着在在测试,更新,扩展或者修复漏洞省钱。
    提高javascript开发速度和效率在平时开发位于个很重要地方,本篇文章给大家介绍日常任务使用起来方便且实用方法和,减少行数,提高工作效率,增加摸鱼时间。
    函数是段结合在起执行特定任务,函数般使用参数与外部进行交互。要简洁高效JS,必须掌握函数参数。在本文,会使用有趣例子来解 JS 必须有效地处理函数参数所有特性。
    ❝本文使用Go来实现字符串逆序这个功能,用最简单话术让你理解附带在Godebug例如:Hello  转换为  olleH❞、实现字符串逆序在go,字符串要根据索引获取值是需要转为字节
    以后在开发,我们项目都是运行在服务器当,而服务器已经将线程定义,线程对象创建,线程启动等,都已经实现完了。这我们都不需要