Sarebbe meglio definirle in modo che l'interfaccia della classe sia esplicita.

Comunque, perchè invece di inventarti un MVC da zero non usi un framework come Laravel. Imparando a usarlo imparerai anche molte best practice rispetto a partire da zero.