如何在使用 swiftlint 声明时强制一个人使​​用数据类型的类型

Posted

技术标签:

【中文标题】如何在使用 swiftlint 声明时强制一个人使​​用数据类型的类型【英文标题】:How to enforce a person to use the type of data type while declaration using swiftlint 【发布时间】:2021-11-15 11:32:25 【问题描述】:

我正在尝试强制我的团队在声明 var/let 时使用数据类型 而不是 var name = "john" 我想要 var name: String = "john"

谁能说出 swiftLint 的规则来实现这个改变?

【问题讨论】:

请不要对你的团队这样做???? 在我之上有一个更大的力量让我这样做???? 你可能应该提醒他们 Swift 是什么类型的语言 - 类型是 inferred,并且像这样不必要地添加类型只是混乱。我不知道如何在 SwiftLint 中强制执行这一点,但如果规则不存在,它可能会更好:p 如果值更改(因此基础类型更改),一切都会中断- 变量仍然具有特定类型。不是 javascript,编译器会报类型错误。 只是在外面扔东西。通过声明类型而不是让它被推断,我显着减少了编译时间。如果您将-Xfrontend -warn-long-expression-type-checking=200 -Xfrontend -warn-long-function-bodies=200 添加到构建设置中的“其他 Swift 标志”,您将看到您可以从中受益的地方。这绝对是一种偏好,它看起来确实更杂乱,但在大型项目中它可以有所作为。 【参考方案1】:

在 .yml 文件中添加这条规则“explicit_type_interface”

【讨论】:

以上是关于如何在使用 swiftlint 声明时强制一个人使​​用数据类型的类型的主要内容,如果未能解决你的问题,请参考以下文章

如何使 .gitignore 和 .swiftlint.yml 在 Xcode 中可见?

使用 SwiftLint 时如何关闭整个项目的行长违规

SwiftLint 函数定义后的强制空行

如果出现错误,如何使我的 Github 操作失败

如何使用 Retrofit 和 OKHttp 在下一次请求时使缓存路由无效/强制更新?

如何解决气旋复杂性? - RxDataSource RxSwift - SwiftLint