visual studio microsoft español descargar community objective-c naming-conventions swift

objective c - studio - Swift: ¿Prefijo de clase necesario?



visual studio installer (2)

¿Debo darle a mis nombres de clase de Swift un prefijo de tres letras como lo recomiendan las Convenciones de Objective-C: los nombres de clase deben ser únicos en toda la aplicación ?


No, no necesitas los prefijos de clase en Swift , porque las clases tienen un espacio de nombre en el módulo en el que viven.

Si necesita desambiguar entre (por ejemplo) una Array de Swift y una clase / estructura de Array que haya declarado en su aplicación, puede hacerlo tipeando como Swift.Array o como MyProject.Array . Eso funciona con extensiones también:

extension Swift.Array { ... } extension MyProject.Array { ... }


No, el prefijo definitivamente no es necesario.

Supongamos que su aplicación tiene MyApp nombre de MyApp y necesita declarar su UICollectionViewController personalizado.

No es necesario que prefijas y subclases de esta manera:

class MAUICollectionViewController: UICollectionViewController {}

Hazlo asi:

class UICollectionViewController {} //no error "invalid redeclaration o..."

¿Por qué? . Porque lo que has declarado está declarado en el módulo actual , que es tu objetivo actual . Y UICollectionViewController de UIKit se declara en el módulo UIKit .

¿Cómo usarlo dentro del módulo actual?

var customController = UICollectionViewController() //your custom class var uikitController = UIKit.UICollectionViewController() //class from UIKit

¿Cómo distinguirlos de otro módulo?

var customController = MyApp.UICollectionViewController() //your custom class var uikitController = UIKit.UICollectionViewController() //class from UIKit