La depreciación y otros attributes de los methods en Swift, ¿cómo?

En Objective-C puedo hacer esto

- (id)init __attribute__((unavailable("init is unavailable, use initWithFrame"))); 

para advertir a los usuarios que no deben usar ese método para la initialization de una class y puedo agregar este otro __atributo para desaprobar un método

 +(void)shareWithParams:(NSDictionary *)params __attribute((deprecated("use shareWithPars: instead"))); 

¿Es posible hacer algo así en Swift?

Swift tiene un atributo available que puede usar para esto. Sus arguments disponibles incluyen

  • introducido
  • obsoleto
  • obsoleto
  • post
  • rebautizado

O por el ejemplo que le diste:

 @available(*, unavailable, message="init is unavailable, use initWithFrame") init() { } @available(*, deprecated, message="use shareWithPars: instead") class func shareWithParams(params: NSDictionary) { } 

Para get más información sobre estos attributes, consulte la sección de Atributos en El lenguaje de progtwigción Swift . (actualmente página 627)

Para Swift 3 y Swift 4, en lugar de utilizar el signo = para configurar el post, debe usar el signo : Por ejemplo:

 @available(*, deprecated, message: "Use EndPointModel class instead") class BaseModel { }