MemoryDB: интерфейс у потребителя
Интерфейс хранилища объявляется у потребителя, а реализации ничего о нём не знают. Реализуйте GetUser (возвращает "not found" для отсутствующего ID) и SaveUser для MemoryDB.
Показать решение
GolangРешение
func (m *MemoryDB) GetUser(id int) (string, error) {
name, ok := m.users[id]
if !ok {
return "", errors.New("not found")
}
return name, nil
}
func (m *MemoryDB) SaveUser(id int, name string) error {
if m.users == nil {
m.users = make(map[int]string)
}
m.users[id] = name
return nil
}Записаться на разбор
10 000 ₽ · 60 минут · онлайн