いいえ、 Swiftではクラスプレフィックスは必要ありません 。クラスはそれらが存在するモジュールの名前空間になっているためです。
(たとえば)Swift=からのArray
とアプリで宣言したArray
クラス/構造体の間で明確にする必要がある場合は、 Swift.Array
またはMyProject.Array
として入力することにより、拡張機能でも同様に機能します。
extension Swift.Array {
...
}
extension MyProject.Array {
...
}
いいえ、プレフィックスは絶対に必要ではありません。
アプリにMyApp
名があり、カスタムUICollectionViewController
を宣言する必要があるとします。
必要ないこのようにプレフィックスとサブクラスを作成するには:
class MAUICollectionViewController: UICollectionViewController {}
次のようにします:
class UICollectionViewController {} //no error "invalid redeclaration o..."
なぜ?。宣言したものはcurrent moduleで宣言されているため、これはcurrent targetです。 UICollectionViewController
からのUIKit
はUIKit
モジュールで宣言されています。
現在のモジュール内での使用方法
var customController = UICollectionViewController() //your custom class
var uikitController = UIKit.UICollectionViewController() //class from UIKit
他のモジュールと区別する方法
var customController = MyApp.UICollectionViewController() //your custom class
var uikitController = UIKit.UICollectionViewController() //class from UIKit