@gogolang

Страница 1079 из 1630
Sergey
18.05.2018
12:19:43
Вот это выводы
В чем ошибочность?

Виктор
18.05.2018
12:20:51
В чем ошибочность?
Какие операции общие производятся чтобы привести их к общему ? Если мне нужно ТОЛЬКО получение нужных данных и все. Зачем мне писать лиший код врапперов, какие плюсы он мне даст?

Sergey
18.05.2018
12:21:00
А еще что мне написать за зря если я в любом случае буду знать что там внутри?
Мой поинт был в "рефлексия это плохо, сродни void*" А ваш, насколько я понимаю, "не нужно писать враппер" Т.е. Экономим на байтах

Google
Виктор
18.05.2018
12:21:25
Мой поинт в том что дженерики нужны редко. И мы с этого начинали, а вы туда сюда

Алексей
18.05.2018
12:22:27
Мой поинт в том что дженерики нужны редко. И мы с этого начинали, а вы туда сюда
Каждый раз, когда вы юзаете массивы, слайсы, мэпы - вы фактически юзаете дженерики

Jentry
18.05.2018
12:23:31
>дженерики нужны редко срсли? ну-ка напиши мне CRUD для десяти моделек без десятикратного повтора кода, боюсь увижу рефлексию

Pawel
18.05.2018
12:24:10
Мой поинт в том что дженерики нужны редко. И мы с этого начинали, а вы туда сюда
Его поинт в том чтобы создать костыль на ровном месте, и затем на примере этого костыля доказывать что без джененриков никак не можно жыть

Jentry
18.05.2018
12:24:28
дженерики нужны, но их нет для собственных типов, только для нескольких встроенных, поэтому в го-коде примитивные типы как правило используются, как раз по этой проблеме

Jentry
18.05.2018
12:24:58
потому что массивы, слайсы, мэпы дженерики, как уже заметили выше

Алексей
18.05.2018
12:25:48
и конечно же массивов, слайсов и мэпов должно хватить всем, как 640 киллобайт когда-то

Google
Алексей
18.05.2018
12:27:20
а свои собственные обобщённые контейнеры не положено никому бескостыльно писать

Pawel
18.05.2018
12:28:33
и конечно же массивов, слайсов и мэпов должно хватить всем, как 640 киллобайт когда-то
можете пример показать своего собственного кода, где интенсивно используются какие-то другие контейнеры?

Pawel
18.05.2018
12:29:07
== CRUD для десяти моделек без десятикратного повтора кода, боюсь увижу рефлексию откуда сделан этот вывод?

На Go?
да пофигу на чём.

Alexander
18.05.2018
12:29:46
а так, пару раз жизненно была необходима мульти-мапа, например.

Alexander
18.05.2018
12:31:20
лул. людьми, видимо

Pawel
18.05.2018
12:31:44
Alexander
18.05.2018
12:31:50
вопрос из разряда, "а где используется logrus"

ну точно где-то используется.

Алексей
18.05.2018
12:32:06
мимо. где это используется?
нигде, очевидно же не нужны людям никакие деревья и стеки это всё от дьявола

‎‎‎‎
18.05.2018
12:32:37
Чёт жёсткий холивар

Pawel
18.05.2018
12:32:58
нигде, очевидно же не нужны людям никакие деревья и стеки это всё от дьявола
ну поскольку ты пример не привёл, ты то точно не используешь. а всё туда же

Pawel
18.05.2018
12:34:38
вопрос из разряда, "а где используется logrus"
нормальный вопрос. Если ты считаешь что это вот прям всем нужно, покажи пример где оно интенсивно юзается. Иначе все эти заявления про то как мы не можем жить без двоичных деревьев - чёс

Pawel
18.05.2018
12:35:31
у вас логика сломана
это у вас. Вы не в состоянии показать ни одной полезной строчки кода в подтверждение своих слов.

Кароч не интересно с вами. Вы демагоги

Google
Alexander
18.05.2018
12:35:59
если вам хватает из коробки тех контейнеров, которые есть в го, не значит что остальным не нужно большего

Alexander
18.05.2018
12:36:02
Если бы не гоферы, то я бы и не знал, что существуют люди, которые считают, что в статически типизированном языке не нужны дженерики

Алексей
18.05.2018
12:36:47
Вообще Go сейчас напоминает Java до появления дженериков, там тоже есть супертип Object, которому можно приводить любое значение. Только дженерики в Java всё таки ввели, хоть и порезанные немножко.

Pawel
18.05.2018
12:36:56
Если бы не этот чат, я бы не знал что для некоторых джененрики имеют ценность сами по себе без относительн опрактичекой применимомсти

Alexander
18.05.2018
12:40:34
а твои бинарные деревья где? покажи
я кажется довольно неплохим русским языком написал, без какой сильно не стандартной структуры я бы не обошелся

Sergey
18.05.2018
12:43:02
а твои бинарные деревья где? покажи
Вот тут согласен на все 100% Деревья не нужны!

Alexander
18.05.2018
12:43:17
func (ep *BaseEndpoint) ParseBody(r *rest.Request, v interface{}) error У нас на проекте есть функция с такой сигнатурой. Она парсит JSON из тела запроса и помещает его в v. Надо ли говорить зачем тут нужен дженерик?

Sergey
18.05.2018
12:44:21
— дженерики не нужны!

Alexander
18.05.2018
12:44:32
? вообще банить за упоминание дженериков, кажется не такой уж плохой идеей.

xPushkin
18.05.2018
12:45:29
Если бы не этот чат, я бы не знал что для некоторых джененрики имеют ценность сами по себе без относительн опрактичекой применимомсти
Генерики имею очень большую ценность. Они позволяют писать код, который такие дауны не поймут. Что позволяет их сразу отсечь от процесса разработки.

Alexander
18.05.2018
12:46:04
Andew
18.05.2018
12:46:23
а по какой, собственно, причине их в Го нет? Просто еще не запилили или есть другие причины?

Sergey
18.05.2018
12:46:51
а по какой, собственно, причине их в Го нет? Просто еще не запилили или есть другие причины?
Потому что очень сложно для программистов, в гугле решили что не надо

Google
Alexander
18.05.2018
12:46:59
Как это решит?
Очень просто, дженерик обеспечил бы здесь типобезопасность, ибо тогда мы бы не смогли попробовать распарсить во что-то, что не удовлетворяет интерфейсу UnmarshalJSON. А так из сигнатуры непонятно что за v я могу туда передать и как оно его из какого формата будет парсить.

Alexander
18.05.2018
12:47:06
а по какой, собственно, причине их в Го нет? Просто еще не запилили или есть другие причины?
самое смешное что есть. просто создатели языка решили что прикладным разработчикам не надо

Alexander
18.05.2018
12:47:34
Alexander
18.05.2018
12:49:59
Эмм. Что. Тогда на вход интерфейс надо принимать.
Зачем вообще на вход вообще что-то принимать? Почему нельзя сделать по человечески: func (ep *BaseEndpoint) ParseBody<T>(r *rest.Request) (T, error) where T: UnmarshalJSON ?

Admin
ERROR: S client not available

Pawel
18.05.2018
12:50:30
а по какой, собственно, причине их в Го нет? Просто еще не запилили или есть другие причины?
их нормально невозможно реализовать чтобы не пострадала скорость компиляции и не выросла когнитивная нагрузка дженерики нужны не настолько чтобы этим жертвовать все действительно нужные обощённые структуры данных встроены в Го. Остальное нужно настолько редко, что ни каких проблем самому реализовать. Но прокрастинирующих монадистов это бесит - для них если нет боли, то это не настоящее программирование

Alexander
18.05.2018
12:51:04
Парсинг и дженерики - это всегда мимо. При парсинге нужно смотреть что внутри структуры. Дженерики этого не дадут.
Код парсинга может быть спокойно сгенерирован во время компиляции при помощи, например, макросов.

Aleksandra
18.05.2018
12:51:29
Привет! Я рекрутер, админы, по правилам группы здесь можно постить вакансии? спасибо

xPushkin
18.05.2018
12:51:30
Роб Пайк не осилил запилить дженерики и сказал нинужно
Ну он их запилил же для коллекций в языке

Alexander
18.05.2018
12:51:56
И зачем, что это дает?
Типобезопасность, самодокументироемость, удобство использования.

Алексей
18.05.2018
12:52:16
Типобезопасность, самодокументироемость, удобство использования.
это слишком сложно для Go программистов походу

Google
Pawel
18.05.2018
12:52:19
роб пайк тупой, это известный факт. куда ему до Alexander Kramov по уму

Alexander
18.05.2018
12:52:45
Привет! Я рекрутер, админы, по правилам группы здесь можно постить вакансии? спасибо
@twentydraft <- спросите в личке, например. так-то отдельный канал/чат есть, но бывает и тут постят

Vladislav
18.05.2018
12:52:46
Типобезопасность, самодокументироемость, удобство использования.
В каком месте то безопасность относительно передачи аргумента?

Алексей
18.05.2018
12:53:45
роб пайк тупой, это известный факт. куда ему до Alexander Kramov по уму
действительно роб пайк не может ошибаться, если он сказал, что дженерики не нужны, значит они не нужны

Slava
18.05.2018
12:53:56
Привет! Я рекрутер, админы, по правилам группы здесь можно постить вакансии? спасибо
По правилам запрета нет ;) главное чтобы вакансия профильная была и с вилкой

Jentry
18.05.2018
12:53:59
роб пайк тупой, это известный факт. куда ему до Alexander Kramov по уму
роб пайк слишком консервативен и не считает, что прикладные программисты со времен паскаля двинулись в требованиях к ЯП

Vladislav
18.05.2018
12:54:18
А в каком языке нормально реализованы дженерики то?

Pawel
18.05.2018
12:54:20
Ну он их запилил же для коллекций в языке
ну то есть между понятиями "дженерики" и встроенными обощёнными структурами данных вы разницы не видете. Ок, так и запишем

Alexander
18.05.2018
12:54:57
В каком месте то безопасность относительно передачи аргумента?
В том, что если ты попытаешься распарсить что-то, для чего не реализован парсинг жсона, то программа не скомпилируется, вместо того, чтобы в лучше случае упасть во время тестов.

Alexander
18.05.2018
12:55:49
Kotlin, Swift

Alexander
18.05.2018
12:56:47
Тебе интерфейсы нужны.
Это тоже не сработает, ибо стандартный анмаршалинг жсона работает на тегах структур и магии рефлексии, что тоже плохо.

Pawel
18.05.2018
12:58:25
показать код, который на C# лучше - это мы не можем конечно. Главное - это своё веское слово вставить. Вдруг найдётся дурак который поверит

Alexander
18.05.2018
12:58:44
И как ты без макросов это обойдешь?
По хорошему никак. Но в адекватной системе макросов тоже ничего плохого нет.

Vladislav
18.05.2018
12:59:28
По хорошему никак. Но в адекватной системе макросов тоже ничего плохого нет.
Ну так с макросами и без дженериков то тоже работает.

Alexander
18.05.2018
13:00:12
Не совсем, функция не может вернуть T

И поэтому переменную нужно объявлять предварительно и передавать указатель на неё в качестве аргумента

Страница 1079 из 1630