Size: a a a

2020 May 19

а

а кто это in Go-go!
не только на тип, но и на сущность
источник

а

а кто это in Go-go!
которая имеет данные
источник

AK

Anton Kucherov in Go-go!
Roman Sharkov
сущность это данные, описывающий некий объект.
поэтому интерфейс априори не сущность, у него нет данных, у него есть лишь ссылка на объект и идентификатор типа, к которому диспетчить вызовы
У этой вещи есть отдельное понятие в Go. Интерфейсный тип и оно как бы отдельно от понятия Интерфейс живет.  🙂
источник

RS

Roman Sharkov in Go-go!
а кто это
не только на тип, но и на сущность
исправил
источник

RS

Roman Sharkov in Go-go!
Aleksandr Razumov
А переменная с типом "io.Reader" это сущность или нет?
нет конечно
источник

AR

Aleksandr Razumov in Go-go!
Roman Sharkov
нет конечно
т.е. в го работать с обобщением невозможно?
источник

RS

Roman Sharkov in Go-go!
Ilya Shikhaleev
Тут тогда проблема языка - вы не можете запретить изменение данных поля без интерфейса для доступа к данным агрегатов :)
интерфейсы тут не при чём, по крайней мере именно гошный interface
источник

AR

Aleksandr Razumov in Go-go!
и sort.Interface это из паралельной реальности?
источник

RS

Roman Sharkov in Go-go!
Aleksandr Razumov
т.е. в го работать с обобщением невозможно?
обобщением чего именно?
источник

AR

Aleksandr Razumov in Go-go!
Roman Sharkov
обобщением чего именно?
инкапсуляция
источник

RS

Roman Sharkov in Go-go!
Anton Kucherov
Тоже имеет место быть, а потом вы создадите другую сущность которая будет этими данными оперировать. И это просто процедурное программирование. И это не хорошо и не плохо, просто Если всегда следовать этому стилю, у вас получится код на Go в стиле C, что так же плохо как код на Go в стиле Java
> а потом вы создадите другую сущность которая будет этими данными оперировать

я чес гря не понял, что ты имеешь ввиду
источник

AR

Aleksandr Razumov in Go-go!
почему-то интерфейс стал не механизмом инкапсуляции, а чем-то непонятным
источник

RS

Roman Sharkov in Go-go!
Aleksandr Razumov
инкапсуляция
обощение инкапсуляции?
я запутался
источник

а

а кто это in Go-go!
Anton Kucherov
Тоже имеет место быть, а потом вы создадите другую сущность которая будет этими данными оперировать. И это просто процедурное программирование. И это не хорошо и не плохо, просто Если всегда следовать этому стилю, у вас получится код на Go в стиле C, что так же плохо как код на Go в стиле Java
а как должен выглядеть код на Go в стиле Go?
источник

AR

Aleksandr Razumov in Go-go!
мне по прежнему не понятно, как сделать "идеоматически" context.Context и sort.Interface
источник

AR

Aleksandr Razumov in Go-go!
Roman Sharkov
обощение инкапсуляции?
я запутался
нет, просто инкапсуляция
обобщение не совсем корректный термин, наверное
источник

IS

Ilya Shikhaleev in Go-go!
Roman Sharkov
интерфейсы тут не при чём, по крайней мере именно гошный interface
Отлично :) тогда вопрос :) как вы в го сохраняете модели в базу данных?
источник

RS

Roman Sharkov in Go-go!
Ilya Shikhaleev
Отлично :) тогда вопрос :) как вы в го сохраняете модели в базу данных?
что значит базу данных? Они разные бывают и методы взаимодействия с ними разные. Какая-то принимает JSON, какая-то byte-stream, ещё какая-то умеет interface{} и ей вообще пофиг (это уже скорее говоря про Go’шные адаптеры)
источник

IS

Ilya Shikhaleev in Go-go!
Roman Sharkov
что значит базу данных? Они разные бывают и методы взаимодействия с ними разные. Какая-то принимает JSON, какая-то byte-stream, ещё какая-то умеет interface{} и ей вообще пофиг (это уже скорее говоря про Go’шные адаптеры)
Это уже детали реализации. Не важно, важны зависимости уровня сохранения в базу и уровня модели
источник

IS

Ilya Shikhaleev in Go-go!
Кто какие интерфейсы предоставляет
источник