【问题标题】:Swift constants which one is better? [closed]Swift 常量哪一个更好? [关闭]
【发布时间】:2018-09-28 10:45:33
【问题描述】:

我有两个单独的参数来快速处理常量。单一结构处理应用程序中的所有常量。这是代码的一个小sn-p,我需要关于哪种格式更好的建议。

格式A:

struct VIConstants{

    static let XEPORT_AUTHORIZE_URL = isStaging ? "xyyyy" : "xyxyx"
    static let XEPORT_TOKEN_URL = isStaging ? "tokenUrl" : "prodTokenUrl"
    static let XEPORT_CLIENT_ID = "xyz" 
    static let XEPORT_CLIENT_SECRET = "yyye"
    static let XEPORT_REDIRECT_URI = "http://localhost:3200/callback"
    static let XEPORT_SCOPES = "scopes"
}

格式 B:

struct VIConstants{

    struct Authentication{
        static let clientId = "xxxxx"
        static let clientSecret = "xxxx"
        static let scopes = "xxxxx"

        static let authUrl = isStaging ? "xxx" : "xyxyxy"
        static let tokenUrl = "sampleURL"
        static let redirectUri = "sampleredirect"
    }
}

请注意,VIConstants 内部还有更多结构用于整个应用程序中的不同其他常量。 我正在寻找的是关于选择哪一个的建议

【问题讨论】:

  • 这是题外话,因为这取决于每个人的偏好/意见。我自己更喜欢底部的,因为它可以更好地对它们进行分组/命名空间,但其他人会有其他的论点/意见。此问题可能会通过审核队列关闭,因为“主要基于意见”
  • @Scriptable 问题本身与意见有关。我不是想提出论据。只是一个意见会有帮助
  • 我不建议任何关于争论等的事情。只是自以为是的问题是题外话,所以很可能会被关闭。

标签: swift struct constants


【解决方案1】:

基于 Swift API 指南,类型和协议的名称为大写驼峰式。其他的都是lowerCamelCase。

https://swift.org/documentation/api-design-guidelines/

按照他们的惯例,格式 B 是首选。

【讨论】:

  • 我相信 OP 更多的是询问结构差异而不是命名约定。
猜你喜欢
  • 2014-07-26
  • 1970-01-01
  • 1970-01-01
  • 2010-12-02
  • 1970-01-01
  • 2011-03-06
  • 2011-03-19
  • 2011-01-05
  • 2014-09-06
相关资源
最近更新 更多