Второй позволяет увеличить количество предпочитаемых поставщиков с течением времени, и вы все еще можете (внутренне) реализовать их как два отдельных метода.
Если бы это был я, я бы посмотрел на два класса (Imdb и Metacritic), оба производные от базового класса RatingProvider и реализующие getRating по-разному.
Или, если бы на мне была шляпа с паттернами, я бы посмотрел на паттерн "Мост".
Только вы знаете, где находится вероятное изменение в вашей системе, и поэтому вы знаете, нужно ли вам ехать в город по этому вопросу, но API, где вы можете получать рейтинги единообразно, независимо от того, откуда они на самом деле пришли, Мне лучше быть API, чем тем, где вы должны принимать эти решения, выбирая один или другой метод.