OP brings some great points (I've had a lot of trouble with an inherited code-based UI in Swift), but I was dying to see code examples of the 'correct way' to use UIKit and its patterns, particularly Dependency Injection, as I've yet to find a solution that I'm comfortable with. Can anyone link a good example?