Сейчас работа проводится с Postgres.
Только там это выглядит не как User конечно же, а struct postgresDBRepo { DB *sql.DB }.
Потом в функции создается объект с типом &postgresDBRepo, но он возвращается уже не как &postgresDBRepo, а как DatabaseRepository.
А DatabaseRepository это как раз интерфейс, методы которого и имплементирует struct postgresDBRepo.
Спасибо за ответ!
У меня просто преподавать аналогичное выполняет. Вот я и думаю к чему это вообще такое. Зачем создавать объект типа User и возвращать его уже как тип Jumping. Так работает, но обратиться же можно только к методу Jump().
Ладно, может в будущем будет смысл :)
Написано
Войдите на сайт
Чтобы задать вопрос и получить на него квалифицированный ответ.
Только там это выглядит не как User конечно же, а struct postgresDBRepo { DB *sql.DB }.
Потом в функции создается объект с типом &postgresDBRepo, но он возвращается уже не как &postgresDBRepo, а как DatabaseRepository.
А DatabaseRepository это как раз интерфейс, методы которого и имплементирует struct postgresDBRepo.