It can be difficult to find a clear, concise explanation of how method dispatch works in Swift, when calls are resolved statically or dynamically, and what that means for performance.
I wrote a post summarizing my learnings, with key cases and examples: https://nilcoalescing.com/blog/MethodDispatchMechanismsInSwift/
