В чем разница между 'фабричным методом' и 'простой фабрикой'?
В вашем же примере единственное назначение класса фабрики - создание подклассов в одном методе.
А классы с фабричным методом умеют свой функционал ПЛЮС могут вернуть себя единообразным для всех них образом. Причем этот самый метод getMobile может заодно участвовать и в других методах того же класса, когда ему понадобилось создать клона, например.
Самая большая разница, на самом деле, будет даже не в коде этих классов или фабрики, а в том коде, который использует тот или иной паттерн извне. С фабрикой вы должны создавать всех наследников в одном месте и знать о них. С фабричным методом они могут приходить откуда угодно, и все, что вам нужно о них знать - это то, что они реализуют тот самый фабричный метод.
Паттерны - это же не о классах, а о взаимодействии между ними и уменьшении связности.
Фабричный метод
Фабричный метод позволяет избавить клиента от необходимости знать о процессе создания конкретных объектов. Клиент зависит только от интерфейса фабричного метода. Клиент используя фабричный метод может создавать и работать с любым объектом реализующим интерфейс IMobile.Простая фабрика
Строго говоря в GoF нет такого паттерна как "простая фабрика". Но тем не менее это откуда-то пошло и подобный кусок кода стали называть "простой фабрикой", об этом есть упоминание в википедии и что в это можно инкапсулировать сложный процесс создания объекта, например когда он зависит от настроек в конфигурационном файле или от пользовательского ввода.
Я не вижу паттерн в простой фабрике. Я вижу лапшу из операторов ветвления. Вместо этого пользовательский ввод или настройки конфига можно напрямую без свалки из операторов ветвления сконвертировать в имя требуемого класса фабричного метода и уже его объект передавать клиенту таким образом избавившись от спагетти-кода в виде "простой фабрики".
Невозможно сказать кто придумал "простую фабрику" и зачем. То, что в ней написано, это спагетти-код. То, что в ней написано, можно решить более элегантным способом без свалки из операторов ветвления.