
Peter
04.06.2017
19:27:05
Нормальная статья, она про то что в корне субпакета должен быть интерфейс, а имплементация уже в его субпакетах

Sander
04.06.2017
19:31:57
где там ссылка на github этого примера? Peter
...

Peter
04.06.2017
19:37:29

Google

Sander
04.06.2017
19:38:21
https://github.com/benbjohnson/wtf
это я так понимаю

Peter
04.06.2017
19:44:08
da

Oleg
05.06.2017
08:51:33
Hola Гофферы. Кто-нибудь работал же, наверняка, со связкой gorm+gin? У меня есть вот такой структ
type Game struct {
.......
PlayersInGame []PlayerInGame `form:"players_in_game" json:"players_in_game"`
}
Я делаю что-то вроде
var json models.Game
err := c.Bind(&json)
Но не могу понять как мне правильно забиндить еще вот этот вот PlayersInGame. Есть какие мысли?

Heorhi
05.06.2017
09:24:05

Oleg
05.06.2017
09:54:00
Это-то понятно, что можно так забиндить. Но мне нужны поля одновременно и из Game и из PlayersInGame. То есть запрос будет вида {game: {result: 'black', place: 'msk', players_in_game: [{...}, {...}, ...]}}

Kirill
05.06.2017
11:41:08
Чят, у нас тут 800 мемберов. Ровно.
Мы почти догнали самый захудалый чат про сиськи. Не знаю, хорошо это или плохо.

Combot
05.06.2017
11:50:29
combot.org/chat/-1001046001048

kolas
05.06.2017
12:04:41

Borat
05.06.2017
12:05:24
+

Vadim
05.06.2017
12:08:03
+

Google

Morran
05.06.2017
12:26:28
+

Michael
05.06.2017
12:32:56
поклонниц c/c++ не так интересно видеть, как поклонниц go

Igor
05.06.2017
12:33:18
поклонниц? каких поклонниц?

Kirill
05.06.2017
12:33:29

I
05.06.2017
12:33:30

anton
05.06.2017
13:26:44
блин, каждый гошный проект - кто в лес, кто по дрова :(
у кого-то вся реализация апи - большая портянка в main.go
у кого-то попытка аккуратно раскидать хэндлеры по файликам в папку handlers
кто-то routes.go отдельным файликом делает
кто-то городит свой фреймворк, с контроллерами и интерфейсами
а как вы структурируете ваш код с echo или gin? :)
где вы держите файлы _test.go, рядом с реализацией или в какой-то далеко запрятной папочке tests? :)
про организацию доступа к БД вообще молчу..

Alex
05.06.2017
13:35:09
так то везде так

anton
05.06.2017
13:38:31
так то везде так
ну в рельсовых проектах это как-то более менее скаффолдингом разруливалось
да и в асп.нет веб-апи проектах тоже

Kirill
05.06.2017
13:39:44
Есть что-то аналогичное для го? Или каждый мочит как он хочет?
В effective go просто не нашел рекомендаций по организации кода по файлам и т.п.

Alex
05.06.2017
13:43:48
угу тока этиъ бестпрактис вагон и тележка. 2 команды разработки в контексте одной компании с друдом договариваются о том чтобы делать по одним и тем же бест практисам. а если говорить о командах в разных компаниях то в 99% случаев у всех все сделано по разному. и это не плохо и не хорошо. просто серебряных пуль нет

Kirill
05.06.2017
13:44:22

Oleksandr
05.06.2017
13:44:34
в смысле "не плохо"
это однозначно против идеологии го, так что плохо

Kirill
05.06.2017
13:44:40
Хотя может это с непривычки так, и со временем станет пофигу как организован код?

Oleksandr
05.06.2017
13:45:31
ответ к и это не плохо и не хорошо

Kirill
05.06.2017
13:46:14

Oleksandr
05.06.2017
13:46:59
афаик философия языка в том, чтобы делать вещи по-максимуму простыми и без шансов сделать 101 реализацию

Kirill
05.06.2017
13:47:20

Google

Kirill
05.06.2017
13:47:35
Про более высокоуровневые вещи - как это можно контролировать? Анреал
Есть язык, на нем пишут 100500 людей. Запретить им изобретать свои велосипеды? Бить по рукам? Унижать в чатах и в комментах на гитхабе?

Oleksandr
05.06.2017
13:48:12
а как другие языки контролируют?
в тот же gofmt добавить пару правил, как вариант

Kirill
05.06.2017
13:48:19

Oleksandr
05.06.2017
13:48:43
Запретить им изобретать свои велосипеды? Бить по рукам? — именно

Kirill
05.06.2017
13:48:59

Oleksandr
05.06.2017
13:51:01
построить граф зависимостей проекта => поиск одобренных паттернов
другой вопрос, что это уже не продавить, тк подходящее время прошло (слишком много софта уже написано)
максимум — ввести устные непроверяемые best practices

Kirill
05.06.2017
13:53:49

Michael
05.06.2017
13:54:02
велосипеды это хорошо

Kirill
05.06.2017
13:54:07
Т.е. кому не надо - не будут юзать новый стандарт и будут продолжать писать велосипеды
Велосипедный софт, который уже есть, отомрет со временем.

Oleksandr
05.06.2017
13:55:52
с точки зрения хотелки "хочу, чтобы новый человек как можно проще вьехал в проект" не иметь одного стандарта оформления сорцов — плохо

Michael
05.06.2017
14:09:24
и у кто-то может похвастаться идеальным проектом с этой точки зрения?

Aleksandr
05.06.2017
14:11:23

Oleksandr
05.06.2017
14:13:07

Aleksandr
05.06.2017
14:13:57
как добился?
книжки читал. фаулер, эванс, ddd, модульное разбиение

Michael
05.06.2017
14:14:10
код гайд прочитали до старта проекта)

Google

anton
05.06.2017
14:26:15
подогрею еще немного...
func InitDb() *gorm.DB {
db, err := gorm.Open(...)
db.AutoMigrate(&User{})
return db
}
нельзя вот без бест-практик такое джуниорам показывать
у всяких там туторов это всё в main.go рядом с роутами и прочим..
мне тут выдали - в каждом хендлере дергают этот InitDb :)

Kirill
05.06.2017
14:33:31

Admin
ERROR: S client not available

Michael
05.06.2017
14:36:34
книг по шарпам от мс начитались)

Alexey
05.06.2017
14:40:03

Kirill
05.06.2017
14:43:52

Alexey
05.06.2017
14:44:05
лол

anton
05.06.2017
15:03:05

Aleksandr
05.06.2017
15:04:24

anton
05.06.2017
15:05:25

i
05.06.2017
15:12:48

Aleksandr
05.06.2017
15:13:41

Alexander
05.06.2017
15:25:38
Всем привет
Может кто подсказать по следующему вопросу
m := make([]int, 0, 10)
func(a []int) {
a = append(a, 12)
}(m)
fmt.Println(m)
почему при должном cap append создает новую область памяти для массива в slice

Антон
05.06.2017
15:27:43

redbeard
05.06.2017
15:30:42

anton
05.06.2017
15:31:35

redbeard
05.06.2017
15:32:00
что значит "увы"? :)

anton
05.06.2017
15:33:07
что значит "увы"? :)
ну ты же знаешь что это значит ;)
на самом деле илонга в жизни я видел не так много, всё что видел - было слишком сложным для моего понимания сходу

redbeard
05.06.2017
15:34:23
ой, да ладно. у нас в чятике обясняют и помогают. кто не хочет - заставляют. кто убегает в чятики про го - преследуют и троллят. шучу :)))

Like
05.06.2017
15:34:57
Го не язык, "ко-ко-ко"

Google

redbeard
05.06.2017
15:35:23
а чо, товарищи, в атоме есть норм. плагин для гошечки?

Like
05.06.2017
15:35:33

redbeard
05.06.2017
15:35:38
или лучше ориентироватья на гогланд?

Like
05.06.2017
15:35:40
А что нужно кроме подсветки синтаксиса?)

anton
05.06.2017
15:35:42

redbeard
05.06.2017
15:35:54
ну и возможность сходить в гиты и прочее

Like
05.06.2017
15:37:12
Госпадэ

redbeard
05.06.2017
15:37:47
ну емакс коврыять не хочу пока, влом асиливать elisp :)

Like
05.06.2017
15:37:50
Мож те еще автоматизированную ide для написания кода?

Vladimir
05.06.2017
15:39:52
Vim с плагинами очень неплох
Gogland еще