
Димка
07.03.2018
08:53:39
Adobe работал)

Александр
07.03.2018
08:55:47
я имел в виду на go

Slach
07.03.2018
09:03:02

Александр
07.03.2018
09:04:01
большое спасибо!!!

Google

Roman
07.03.2018
09:04:33
Как конвертировать []byte / map[string]interface{} к json.RawMessage ?

Aleksandr
07.03.2018
09:06:50
json.RawMessage(bytes) попробуй так
оно вроде и есть []byte

Roman
07.03.2018
09:08:42
Между type(another type) и anotherType.(type) есть разница ?

Aleksandr
07.03.2018
09:09:37
второе это кастинг интерфейса к типу

Artem
07.03.2018
09:18:00
интересные штуки подъехали, если кто пропустил.
http://blog.kubernetes.io/2018/03/apache-spark-23-with-native-kubernetes.html
https://github.com/apache/beam/tree/master/sdks/go (тут в readme есть ссылка на интересную бумажку initial design)

Alexey
07.03.2018
09:42:03
Привет, две отличные новости перед длинными выходными!
1. Программа конференции на сайте, смотреть тут: https://www.gophercon-russia.ru/#rec46819495
2. Сегодня у нас появился партнер афтепати, а это значит что безлимитным пивом каждого гофера угощает Sirena-Travel, компания специализирующаяся на travel-системах, которая стартует разработку своего нового продукта на Go.

Andrew
07.03.2018
10:14:25
Настало время вакансий!

Анастасия
07.03.2018
10:15:32
@NXShock рановато еще для вакансий)

Alexander
07.03.2018
10:15:38

Andrew
07.03.2018
10:16:00

Alexei
07.03.2018
10:16:04
праздник завтра )

Google

Alexander
07.03.2018
10:16:30
ну значит поздравление надо было во Future обернуть

Andrew
07.03.2018
10:18:19

Sergey
07.03.2018
10:41:10
Всем привет!
Не могу понять почему multipart.File нельзя передать в метод с параметром io.Reader.
multipart.File вроде как реализует io.Reader так в чем же проблема?
type File interface {
io.Reader
io.ReaderAt
io.Seeker
io.Closer
}

Aleksandr
07.03.2018
10:43:03
текст ошибки не скажешь?

Vladislav
07.03.2018
10:43:05

Sergey
07.03.2018
10:43:57

Aleksandr
07.03.2018
10:44:14
&f (type *multipart.File)
по-моему ты функцию передаешь?
код покажи

Vladislav
07.03.2018
10:44:54
А какой вообще смысл передавать интерфейсы через указатель?

Sergey
07.03.2018
10:45:23

Aleksandr
07.03.2018
10:45:33
код покажи

Vladislav
07.03.2018
10:46:04
Ну достаточно просто как аргумент использовать интерфейс, а не указатель на него.

Aleksandr
07.03.2018
10:46:28
указатель на интерфейс насколько я помню вообще сделать нельзя

Sergey
07.03.2018
10:46:50

Vladislav
07.03.2018
10:48:56

Daniel
07.03.2018
10:58:25

Aleksandr
07.03.2018
11:02:45

Google

Artem
07.03.2018
11:03:46

Alexander
07.03.2018
11:12:10

Artem
07.03.2018
11:26:06

Quet
07.03.2018
11:28:13
3 дня? что-то долго
а с параллельными вычислениями на любом языке не все так просто

Alex
07.03.2018
11:36:16
Для консольной проги лучше команды или флаги?

Stanislav
07.03.2018
11:58:50

Vitalii
07.03.2018
13:08:53
Привет, а почему в golang не сделали явную реализацию интерфейса?

Илья
07.03.2018
13:10:27
что это значит?

Andrew
07.03.2018
13:10:37
А так да, нужен переводчик ))

Vitalii
07.03.2018
13:11:03
Ну то есть сейчас в golang duck typing по отношению к интерфейсу

Alexander
07.03.2018
13:11:05

Aleksandr
07.03.2018
13:11:08
имеется в виду утиная типизация

Илья
07.03.2018
13:11:17

Vitalii
07.03.2018
13:11:18

Maksim (Ellrion)
07.03.2018
13:11:27

Vitalii
07.03.2018
13:11:31
Нет никакой статьи, почему они решили именнто так делать?

Zver
07.03.2018
13:11:34

Илья
07.03.2018
13:12:58

Google

Илья
07.03.2018
13:14:07
ну, можно добавить constraint
var _ MyInterface = (*Mytype)(nil)

Maksim (Ellrion)
07.03.2018
13:14:12
тема в том что ты можешь использовать сторонние структуры из сторонних пакетов, которые ничего не знают о твоем приложении и при этом не привязываться именно к ним

Илья
07.03.2018
13:14:19
если хочется чтобы была ошибка компиляции

Vitalii
07.03.2018
13:17:10
Окей, всем спасибо

Alexander
07.03.2018
13:17:12
зачем это нужно?
ну например ты сразу понимаешь что тебе нужно реализовать какие-то методы, тебе IDE скажет что твой класс не соответствует интерфейсу. для DI контейнеров надо. в джаве, например, в интерфейсе уже могут быть какие-то константы прямо в интерфейсе и даже быть некая реализация для методов.
и там и там свои плюсы. вообще на го, после явы, использовать интерфейсы слегка непривычно

Aleksandr
07.03.2018
13:18:23

Admin
ERROR: S client not available

Vitalii
07.03.2018
13:18:42

Alexander
07.03.2018
13:18:51
там вроде была универсальная статья, типа "почему в го нет такой-то фичи"

Vitalii
07.03.2018
13:18:53

Aleksandr
07.03.2018
13:19:30

Илья
07.03.2018
13:19:52
Inspiration: Smalltalk

Artem
07.03.2018
13:20:50

Aleksandr
07.03.2018
13:21:30

Илья
07.03.2018
13:21:52
это объяснение, почему так сделано

Mykyta
07.03.2018
13:22:08

Aleksandr
07.03.2018
13:22:10
нет, объяснение сделано как где, а не почему

Google

Artem
07.03.2018
13:24:57
нет, объяснение сделано как где, а не почему
вообще в FAQ есть
Another important principle is to keep the concepts orthogonal. Methods can be implemented for any type; structures represent data while interfaces represent abstraction; and so on. Orthogonality makes it easier to understand what happens when things combine.
т.е. причина - ортогональность

Quet
07.03.2018
13:26:21
так себе причина ) принудительное объявление какой интерфейс имплементится никакой ортогональности бы не помешало

Artem
07.03.2018
13:26:44

Quet
07.03.2018
13:27:23
но мне кажется го это не тот язык где надо искать рациональное объяснение тому что есть
что-то сделано так потому что не осилили лучше
что-то притащили из plan9 и там было сделано так
что-то рационально
и поди разберись где что

Artem
07.03.2018
13:28:04
сомневаюсь, что не осилили, как бы ребята там серьезные. Просто это лишнее. Зачем имплементация, если основная задача -это композиция.

Quet
07.03.2018
13:29:04
серьезные ребята игнорирующие последние лет 30 computer science
да ну, вон с этими избитыми генериками даже итог: "мы не знаем как их сделать нормально"

Artem
07.03.2018
13:29:39

Quet
07.03.2018
13:29:57
или с gc "мы заточим gc под один юзкейс (latency в ущерб throughput) и забьем на остальное потому что нормальный gc это сложно

Zver
07.03.2018
13:30:02

Quet
07.03.2018
13:30:13

Maksim (Ellrion)
07.03.2018
13:31:39

Artem
07.03.2018
13:31:44

Quet
07.03.2018
13:31:57

Artem
07.03.2018
13:32:47
ждем Go++

Alexander
07.03.2018
13:33:01

Quet
07.03.2018
13:33:13

Artem
07.03.2018
13:33:26
боюсь пока раст будет окончательно готов я уже буду на пенсии )

Quet
07.03.2018
13:33:41
ну если тебе через год-другой на пенсию то да