Junior — Middle
Que tipos de despacho não podem ser modificados através do método Swizzling?
sobes.tech IA
Resposta da IA
O método Swizzling no iOS permite alterar as implementações de métodos em tempo de execução, mas funciona apenas com a despacho dinâmica do Objective-C. Tipos de despacho que não podem ser modificados através do Swizzling:
- Despacho estático (por exemplo, chamadas de funções C ou C++ sem métodos virtuais).
- Despacho Swift usando métodos resolvidos estaticamente (por exemplo, métodos finais ou métodos de estruturas).
- Chamadas de métodos que não são implementadas através do runtime do Objective-C (por exemplo, métodos não marcados com @objc).
Assim, o Swizzling aplica-se apenas a métodos que passam pelo runtime do Objective-C e não funciona com métodos puramente Swift sem @objc.