Как в Go жить без перегрузок функций и значений аргументов по умолчанию?
Программный комитет ещё не принял решения по этому докладу
Целевая аудитория
Тезисы
В Go с самого его зарождения не было и нет перегрузок функций, нет дефолтных значений параметров как в других языках программирования. С одной стороны - это благо, т.к. невозможно случайно вызвать не ту имплементацию функции. С другой стороны - приводит к неудобствам. Функциональные опции помогают развивать open-source библиотеки, не поднимая мажорную версию на каждое несущественное изменение API и решают несколько дополнительных задач, помогающих пользователям писать менее "бажный" код (перегрузка конструкторов типа, защита приватных переменных, дефолтные значения параметров и др.). Посмотрим на некоторые типовые задачи в Go и попробуем их решить с и без функциональных опций, обсудим преимущества и недостатки подходов.
Руководитель команды разработки клиентских библиотек YDB, кандидат технических наук.
Яндекс
Видео
Другие доклады секции
Лучшие практики, Go-way