Swift Protocols vs Inheritance: The Real Tradeoff Senior iOS Developers Need to Understand

If your BaseViewController has more than three levels of subclasses, you probably do not have an architecture.