в стд)
func Open(path string) (*Plugin, error) {
return open(path)
}
Видимо open(..) ещё где-то используется
А почему нельзя было написать логику в Open и использовать где-то еще Open?
Потому что если понадобится в Open добавить логику, то она изменится во всех местах, где это Open используется. А так мы можем дописать что-то в Open, не боясь, что в других местах что-то поломался
Open можно вызывать из других пакетов
Понятно, я спросил почему там ретерн функции с идентичной сигнатурой вместо кода в Open
Сигнатура не идентичная, иначе была бы рекурсия. Если вы спрашиваете, почему сразу нельзя было сделать Open, то возможно код расширялся и изначально не предусматривался доступ к open извне. Тут по принципу солида.
“Не совсем идентичная”. Окей.. Там расширяться то нечему особо. Два файла на 100 строк, половина из которых документация
Возможно open используется в нескольких местах и чтобы не городить просто вынесли в отдельный метод?
Не используется вроде как
Обсуждают сегодня