Как избавится от сравнения класов

Динамическое связывание
на самом деле это должно выглядеть как-то так.

Преимущество, в любое время можем поменять интерфейсы.
Порождение таблицы как правило выносят в фабрику
Ребята, я должен признаться, что все еще несколько "не в теме". И к сожалению занят двумя другими курсами, поэтому не могу компетентно прокомментировать.

В целом предлагаю такую схему: Женя автор и конечное слово за ним. Мы с Валей имеем право предлагать любые улучшения и присылать их в виде pull request. Если Евгений согласен, то он принимает pull request и если нужно потом дорабатывает. В то же время если Валентина на 100% уверена что проект нужно изменять, и Евгений не соглашается, тогда садимся более широким кругом (например втроем).

В целом какой сейчас статус? Какой из вариантов мы обсуждаем:
 - Берем вариант Валентины #6, а #7 закрываем
 - Берем #7, закрываем #6 
 - Закрываем #6, #7 требует доработки
 - Закрываем #6 и #7, ищем новое решение, которое устроит всех

О чем именно речь?