Как было отмечено ранее, вместо определения ядра в виде класса, его можно опрелить в виде интерфейса с последующей реализацией. Если компания намеревась выпускать несколько  реализаций  контроллера,  интерфейс  был  бы  уместен, но только если бы все реализации интерфейса использовали один и тот же набор методов.

Читать »