Por que o @objc implícito foi descontinuado no Swift 4 e como corrigir isso?
Olá a todos! Recentemente atualizei meu projeto do Swift 3 para o Swift 4 (usando Xcode 9 beta) e me deparei com um monte de avisos. O compilador diz algo como: «The use of Swift 3 @objc inference in Swift 4 mode is deprecated. Please minimize deprecated @objc inference...» \n\nAntes, eu escrevia código em Swift 3, e os selectors para botões, target-action, e métodos chamados do Objective-C funcionavam. Por exemplo, este código simples funcionava sem problemas:\n\n```swift\nclass MyViewController: UIViewController {\n @IBOutlet weak var myButton: UIButton!\n \n override func viewDidLoad() {\n super.viewDidLoad()\n myButton.addTarget(self, action: #selector(buttonTapped), for: .touchUpInside)\n }\n \n func buttonTapped() {\n print("Button tapped")\n }\n}\n```\n\nApós a atualização para o Swift 4, recebo um aviso na linha com `#selector(buttonTapped)`. Entendo que isso está relacionado às novas regras de inferência de `@objc`, mas não entendo completamente. Por que