Protocols > Classes in swift  after the rather amazing protocol orientated programming video Swift developers everywhere got far more disciplined when it came to favouring composition using protocols over inheritance and base classes