@proGO

Страница 805 из 1674
Sparrow
23.08.2017
19:48:52
ой все, люби свою змею. я не против )

Sergey
23.08.2017
19:50:15
Sergey
23.08.2017
19:52:04
А зачем завязываться на порядок элементов в map?
Может быть не знает что такое рефлект?

Google
Alexey
23.08.2017
19:52:32
Sergey
23.08.2017
19:52:45
Nikolay
23.08.2017
19:53:36
А зачем завязываться на порядок элементов в map?
Да я как бы не завязываюсь на порядок map, просто эффект интересный, в шаблонизаторах одинаковый порядок, а в коде - рандомный, сбивает с толку немного, хотелось бы посмотреть в чем разница.

Sparrow
23.08.2017
19:58:03
наверняка мап как дерево устроен, откуда там сортировке взяться (исходник не смотрел)

Daniel
23.08.2017
20:01:38
там дерево внутри

и оно при каждой записи перебалансируется

Sergey
23.08.2017
20:01:56
в смысле мап как дерево? map[string]string у меня
Например вместо string хранить структуру данный и указателя на вершину другого дерева

Там потомком

Вроде

Daniel
23.08.2017
20:02:20
а вот то, что и без записей порядок обхода каждый раз случайный - это сделано специально

Alexander
23.08.2017
20:02:21
наверняка мап как дерево устроен, откуда там сортировке взяться (исходник не смотрел)
обычно map - это как хеш, но да - хеш-функции не заботятся о сортировках

Google
Nikolay
23.08.2017
20:03:25
там дерево внутри
т.е. тип map[T1]T2 имеет под собой древовидную структуру в памяти, так это понимать?

Daniel
23.08.2017
20:03:33
да

Nikolay
23.08.2017
20:04:08
а где можно просвятиться по этому вопросу, особенно про балансировку заинтриговало

Sparrow
23.08.2017
20:04:22
гугл data structures

можно какой-нибудь курс пройти

Daniel
23.08.2017
20:04:51
https://www.goinggo.net/2013/12/macro-view-of-map-internals-in-go.html

Sergey
23.08.2017
20:04:57
а где можно просвятиться по этому вопросу, особенно про балансировку заинтриговало
Обычно на си такое пишут, доя обучения стеки, очереди, деревья

LexsZero
23.08.2017
20:05:38
Nikolay
23.08.2017
20:06:09
Всем спасибо, буду учиться

Sparrow
23.08.2017
20:06:46
ага. по книжкам -- есть одна с кнутом и много разных с пряниками.

Sergey
23.08.2017
20:07:10
ага. по книжкам -- есть одна с кнутом и много разных с пряниками.
Керниган и ритчи и бинарные деревья и чо ток там не было

)

Dmitri
23.08.2017
20:07:48
https://gist.github.com/CssHammer/cf435e9b07e25ae17ad537e55c99ec42 Подскажите, если сработал return во внутренней функции - прекратиться ли цикл?

Daniel
23.08.2017
20:08:07
нет, конечно

Dmitri
23.08.2017
20:08:44
да и я так же удивился, но че-то после ретурна прекращается все у меня

буду копать, спапсибо

Sergey
23.08.2017
20:09:29
Ты чо))

Тимофей
23.08.2017
20:13:04
Сори, случайно

Sergey
23.08.2017
20:13:49
нет, конечно
А есть какой нить бот, просто как в чате про вим. Чтобы можно было банить спаммеров?

Dmitri
23.08.2017
20:14:33
banoff например

Google
Alexander
23.08.2017
20:17:25
Ребята, вычего? Какие сбалансированные деревья? На код типа map поглядеть просто религия не позволяет? https://golang.org/src/runtime/hashmap.go Там прямо в самом начале и рассказано, как организован внутри тип map.

Alexey
23.08.2017
20:24:55
https://www.goinggo.net/2013/12/macro-view-of-map-internals-in-go.html
И по этой ссылке тоже хеш говорят.

Nikolay
23.08.2017
20:26:16
Забываю, что Go написан на Go и можно подглядеть исходники. Но что-то сходу не разобраться без объяснений.

Daniel
23.08.2017
20:27:01
И по этой ссылке тоже хеш говорят.
ну там же даже картинки есть. как минимум два уровня в дереве

Alexander
23.08.2017
20:27:15
А что тут объяснять? // A map is just a hash table. The data is arranged // into an array of buckets. Each bucket contains up to // 8 key/value pairs. The low-order bits of the hash are // used to select a bucket.

Daniel
23.08.2017
20:27:45
ну

сначала массив, потом мапа

Sergey
23.08.2017
20:28:54
Какой переезд лол

В ла

Alexander
23.08.2017
20:32:17
ну там же даже картинки есть. как минимум два уровня в дереве
Да, картинка есть, только дерева на этой картинке нет :)

/me зануда :)

Daniel
23.08.2017
20:33:13
ну, хорошо. как мы назовем ту структуру, что на картинке?

Alexander
23.08.2017
20:34:07
array of buckets

Daniel
23.08.2017
20:34:44
Деревом в теории графов называют связный ациклический граф.

Alexander
23.08.2017
20:34:56
Даниэль, попробуй заняться лексическим анализом. Для начала можно попробовать найти слово 'tree' в коде hashmap.go :)

Daniel
23.08.2017
20:35:09
массив бакетов представляет собой связанный ациклический граф

Alexander
23.08.2017
20:36:33
в вакууме :)

Джон
23.08.2017
20:36:38
Какой переезд лол
через дорогу )

Daniel
23.08.2017
20:37:12
в вакууме :)
в учебнике, бро, в учебнике... учебников, правда, никто не читает из программистов

Sergey
23.08.2017
20:37:48
Google
Джон
23.08.2017
20:38:00
Дарова
о привет )

Daniel
23.08.2017
20:38:18
я тут порадовал интервьера, сказав, что список однонаправленный - тоже дерево. но он и правда дерево же, просто вырожденное

Alexander
23.08.2017
20:38:24
в учебниках написано, что весь мир - это граф. Это еще индусы знали с их Сетью господа Индры, где каждый узел связан со всеми остальными :)

Daniel
23.08.2017
20:38:47
ну так и не надо такое важное знание игнорировать

Alexander
23.08.2017
20:39:15
OK! :)

Sergey
23.08.2017
21:05:26
https://play.golang.org/p/f058QGB4QK можете подсказать демон собирает все что пришло на порт тсп 7000 и пишет в БД , но когда я делаю проверку не telnet (он нормально работает ) а каким то приложением по tcp то пусто Message Received:TEXT in (пусто)



Admin
ERROR: S client not available

Daniel
23.08.2017
21:11:56
так и есть

Sergey
23.08.2017
21:17:58
ок , но почему демон не видит ничего что пришло на TCP порт хотя если подключаться через телнет все норм

Sergey
23.08.2017
21:19:46


но почему то null в переменной

data := string(message)



Nikolay
23.08.2017
21:21:14
ну как я понимаю, не учитывается ошибка, поэтому message = nil, поэтому и пусто

хотя доки говорят, что должен хотя бы часть возвращать, которая прочиталась до ошибки

Sergey
23.08.2017
21:23:55
и еще момент я вижу эти сообщения когда разрываю тсп сессию

Daniel
23.08.2017
21:24:20
коллега

Google
Daniel
23.08.2017
21:24:30
код ваш довольно мерзко отформатирован

читать его неприятно

там наверняка что-то простое, но я даже не смог до этого дойти

Kirill
23.08.2017
21:25:25
как ты мягок, Нил

комментарии без пробела после // зарезервированы

Alexander
23.08.2017
21:26:59
> а каким то приложением по tcp то пусто Сергей, так это, может быть, на "какое-то приложение" надо смотреть?

Откуда эта нахальства у всех сразу думать, что какое-то приложение сразу по TCP что-то отправляет? :)

Sergey
23.08.2017
21:28:35
потому что я знаю

какоек то приложение потому что это не так принципиально

Daniel
23.08.2017
21:29:16
коллега

обрежте все, кроме работы с сетью

и посмотрите, что там как

Alexander
23.08.2017
21:29:37
А еще лучше строки типа 45 делать в виде fmt.Println("Cannot accept!!", err)

Daniel
23.08.2017
21:30:05
да нет никакого смысл продолжать, если акцепт ошибку вернул. падать надо

log.Fatalf()

Alexander
23.08.2017
21:30:48
Ну, или Errorf, да. Но оно будет не в stdout писать, а в stderr

Daniel
23.08.2017
21:31:01
да и слава богу

Страница 805 из 1674