Oleg
Андрей
<offtopic>Всегда хотелось узнать, где вы вот этого "в ковычках" понабрались?</offtopic>
Oleg
Dmitriy
Vladislav
Кстати, а Теги в Go несут еще какие-либо функции, кроме помощи при рефлексии?
Ivahaev
Ну можно и кастомной информацией их загрузить.
Alexander
Alexander
Mike
ну это если таких функций 20, и у всех набор разный, то под каждую структуру делать не оч, да
Alexander
вполне нормально, если это разные данные то и тсруктуры должны быть разные
Alexander
лезьти и пихать везде пустые интерфесы в го, потому что это лучше выглядит – это опитонивание языка
Alexander
не надо так
Mike
не, я согласен, что лучше именованная структура
Mike
но неименованная лучше чем 20 параметром
Alexander
лучше 20 параметров, чем пустой интерфейс
Alexander
это хоть зарефакторить можно потом
Mike
ага, может ты еще винапи вспомнишь?
Mike
как классно было помнить, что между 2 и 3 аргументом нужно еще 3 нулла передать
Mike
Yehor
Mike
обертки — это уже что-то на уровне тех же именованных структур
Mike
еще раз, я не говорю, что пустой интерфейс — хорошо, я говорю, что 20 параметров — хуже
Anonymous
Нужно голосование. Я голосую за 20 параметров.
явное лучше
Ivan
а все параметры в структуру нельзя что ли обернуть и передавать ее одну?
Мерль
Господа, ну вы что
Какие двадцать параметров
Какие интерфейсы
Мерль
Используйте структуры и будет вам счастье
Kirill
Dmitriy
Как лучше передавать много параметров в функцию?
Использовать структуру – 40
👍👍👍👍👍👍👍 83%
Другое – 5
👍 10%
Стопицот парметров - так и передавать. С группировкой по типам – 3
👍 6%
Использовать interface{}
▫️ 0%
👥 48 people voted so far. Poll closed.
Anton
есть вот такая спорная баянистая статья: https://dave.cheney.net/2014/10/17/functional-options-for-friendly-apis
Anonymous
Igor
Фабрики параметров с фабриками объектов! С фабриками для первых двух фабрик
Anton
и фабриками фабрик первых двух фабрик
Anonymous
Igor
по фабрике на каждый параметр
Anonymous
Похоже, что я не знаю, что такое "фабрика"...
Anton
Anonymous
погуглил, вроде начал догадываться
Anton
в джаве их много, ибо язык располагает
Anton
вот например в apache xml-rpc: https://ws.apache.org/xmlrpc/apidocs/org/apache/xmlrpc/server/RequestProcessorFactoryFactory
Konstantin
В идеале, чтобы помимо дефолтных значений у аргументов, можно было бы еще вызывать функцию с именнованными аргументами.
x := a(name="Adolf", age=13), а те что не заданы в функции использовали бы значения по умолчанию.
Привет, Питон)
Konstantin
А так, та функция с кучей аргументов, как и сказал выше - база для оберток вокруг нее же.
Ivahaev
Мерль
Kirill
Anonymous
А какая разница?
Например, в функции age равен нулю. Это пользователь передал 0 или он ничего не передал?
Kirill
нет. хочешь — не делай if'ы. делай как хочешь, понимаешь? хоть рефлектом из мапы дефолты вгружай, хоть что
Kirill
всем по-фи-гу.
Igor
Konstantin
Konstantin
Kirill
Anonymous
Наставить на истинный путь пофигизма всех, кому не пофиг!
Kirill
Kirill
Мерль
Konstantin
Используй паттерн Builder
Я думал об этом, но по мне тогда простота, к которой стремлюсь в данном пакете пропадет.
Мерль
Konstantin
Еще, к слову, очень не хватает перегрузки функций)
Anonymous
Konstantin
Для чего?
для, кто бы подумал, перезагрузки функций. по мне это очень удобно бывает.
Konstantin
*Если делать с умом, разумеется. Но с умом надо все делать, иначе и if можно сделать такой, что язык усложняется, это же не повод отказываться от него
Anonymous
Так можно и до дженериков дойти. ))
А ВОТ ТЕПЕРЬ ПАБЛИК
кстати как справлятся без них?:
Dmitry