@gogolang

Страница 1382 из 1630
many-faced
09.09.2018
16:03:33
зачем мне это потом при сборке )

Zaur
09.09.2018
17:40:38
Ребят у меня в монге проблема unknown top level operation: $expr

Монга 4.0

Куда где искать? Откуда эта проблема?

Google
Zaur
09.09.2018
17:41:46
Какого хрена я вообще начал на монге это всё делать?

https://play.golang.org/p/iFd1ld5iLT6

Roman
09.09.2018
17:51:12
@onokonem https://github.com/romshark/Go-2-Proposal---Immutability#310-why-do-we-need-the-distinction-between-immutable-and-mutable-reference-types

Андрэ
09.09.2018
19:05:10
Товарищи коллеги, помогите до конца разобраться пожалуйста) почему таки https://play.golang.org/p/KTQUsHo6Be- &n2 убегает в кучу?

Александр
09.09.2018
19:21:52
а зачем ты хоронишь структуру

Sergey
10.09.2018
05:55:02
Так middleware нужен

Maruf
10.09.2018
05:56:04
решил попрактиковаться.Вопрос по gorilla/sessions после удачной аутентификации запускается сессия и в sessions.Value ["user"] = userid в userid хранится что?токен или просто login пользователя и для чего непосредственно нужен session.Value?

Maruf
10.09.2018
05:58:36
Так middleware нужен
я не работал с миддлами ,перечитал много статей, написана какая-то абракадабра,из-за этого каша в голове нет ли годной ссылки, я буду признателен

Alexander
10.09.2018
05:59:45
/

andrew
10.09.2018
06:02:38
Добрый день. Хотел бы уточнить небольшой вопрос по поводу мьютексов и слайса данных. У меня стоит мьютекс на запись данных и на удаление. А вот на чтение слайса - нет. Будут ли проблемы если при фориче слайса в него будет добавляться элемент или удаляться? Нужно ли ставить мьютекс и на чтение?

Google
Sergey
10.09.2018
06:05:22
https://medium.com/@matryer/writing-middleware-in-golang-and-how-go-makes-it-so-much-fun-4375c1246e81

На медиумеме хорошо было

Я как то глянул go-chi и очень нравится

Maruf
10.09.2018
06:06:15
https://ru.coursera.org/lecture/golang-webservices-2/osnovy-middleware-dlia-http-BSs7A
спасибо? слушал его в начале изучения го, чуть не было нервного срыва от колва его чавканий

Я как то глянул go-chi и очень нравится
стараюсь по возможности избегать фреймворков, для новичка плохая практика

Sergey
10.09.2018
06:08:03
стараюсь по возможности избегать фреймворков, для новичка плохая практика
Все равно ну, без gorilla mux тяжело вытаскивать параметры url

А так да

Думаю хороший вариант писать на net/http

Alexander
10.09.2018
07:42:52
О! https://www.youtube.com/watch?v=rWJHbh6qO_Y Фитцпатрик говорит, что мы не будем убивать уже существующий код - it always will be usable. Типа, код из Go1 будет продолжать нормально комплироваться в Go2

lexxx
10.09.2018
07:45:34
ну норм че

Georgy
10.09.2018
07:46:27
а потом сделают "дефолтную имплементацию интерфейса"

Alexander
10.09.2018
07:46:44
Ну, я просто опасался, что будет как с питонами, и не я один



Daniel
10.09.2018
08:25:10
О! https://www.youtube.com/watch?v=rWJHbh6qO_Y Фитцпатрик говорит, что мы не будем убивать уже существующий код - it always will be usable. Типа, код из Go1 будет продолжать нормально комплироваться в Go2
это, кстати, не означает, что go2 должен быть совместим с go1. достаточно обеспечить интерфейс между скомпилированными пекеджами

Alexander
10.09.2018
08:27:06
Ну, ни про какой такой интерфейс речи не было, вроде. Просто сказал, что определеннно не собираются убивать существующий код и экосистему Go

Daniel
10.09.2018
08:27:47
еще раз - есть множество способов это обеспечить и не тянуть с собой обратную совместимость

Alexander
10.09.2018
08:29:39
Если нужна будет какая-то ковертация, то, к сожалению, просто придется знать оба языка, по сути. А это мало кому понравится... Надеюсь, что так не будет

Я и с первым-то еще не до конца разобрался. :)

Google
Алексей
10.09.2018
08:31:48
стоп

так ведь go2 = go1 + новые фичи

Daniel
10.09.2018
08:32:09
этого мы не знаем

я вот вообще думаю, что go2 не будет в обозримом будущем

Alexander
10.09.2018
08:32:41
так ведь go2 = go1 + новые фичи
но поопасаться-то надо? Уж лучше переопасаться, чем недо...

Daniel
10.09.2018
08:32:43
не нужен

Алексей
10.09.2018
08:32:47
ну или можно предположить, что go2 = go1 + новые фичи + небольшие незначительные изменения

eugene
10.09.2018
08:33:02
не нужен
go не нужен?

Алексей
10.09.2018
08:33:05
не нужен
ага, конечно

Daniel
10.09.2018
08:33:12
go2 не нужен

Alexander
10.09.2018
08:33:55
не нужен
А Фитцпатрик и сказал, что еще не решили, может быть будет Go 1.12 и так далее, а никакой не 2

Daniel
10.09.2018
08:34:00
у go1 есть недостатки, но в общем он покрывает всю поляну

go2 окажется конкурентом go1, и этоне нужно никому. поэтому будет go1+новые_совместимые_фичи

Daniel
10.09.2018
08:35:41
я задолбался, и тупые коменты буду просто чистить

Алексей
10.09.2018
08:35:49
конечно

eugene
10.09.2018
08:36:06
у go1 есть недостатки, но в общем он покрывает всю поляну
а какие недостатки go вы считаете самыми опасными?

Алексей
10.09.2018
08:36:10
ведь краткий проброс ошибок - это так тупо

Daniel
10.09.2018
08:37:42
ведь краткий проброс ошибок - это так тупо
тупо мусолить эту тему в этом чате в сотый раз (я вот думаю, что нам таки нужны checked exceptions, но не сообщаю об этом всем постоянно)

Google
Алексей
10.09.2018
08:38:14
не я начал

go2 не нужен

тупо мусолить эту тему в этом чате в сотый раз (я вот думаю, что нам таки нужны checked exceptions, но не сообщаю об этом всем постоянно)
а раз уж начали про checked exceptions, то это скорее всего будет приводить к throws Exception или аналогу во многих местах

Eldar
10.09.2018
08:42:01
херь нечитаемая эти чеки

питонистам понравится, логика задом на перед

Admin
ERROR: S client not available

Никита
10.09.2018
08:42:36
херь нечитаемая эти чеки
Она в какой то мере делает код проще

Daniel
10.09.2018
08:42:59
а какие недостатки go вы считаете самыми опасными?
опасными? хороший вопрос 1. обработка ошибок. она сделана плохо, и вокруг нее появляется масса говнокода, от игнорирования ошибок до логирования их на всех уровнях вложенности 2. система типов. нам, как выяснилось, очень нужны типсуммы. сейчас мы эмулируем их на интерфейсах с тайпсвитчами, или делаем динамику на рефлексии. (тайпсвитч - тоже рефлексия.) 3. концептуальная неконсистентность. например, генерики, которые есть в языке, но не для программера. и еще масса всего. тут ничего поделать нельзя

Алексей
10.09.2018
08:43:01
питонистам понравится, логика задом на перед
не, check норм, вот handle уже несколько сомнительно

Eldar
10.09.2018
08:43:22
Alexander
10.09.2018
08:44:22
да все читаемо когда привыкаешь, сейчас все спокойно читают код с err != nil и ниче, главное чтоб новая система решала имеющиеся проблемы имх

Алексей
10.09.2018
08:44:45
об этой связке и речь
ну вообще можно check и без handle юзать

Eldar
10.09.2018
08:46:16
трай тоже можно без кетча)

Алексей
10.09.2018
08:47:15
трай тоже можно без кетча)
ну не совсем, либо try finally, либо try catch

да и check - это не try

Eldar
10.09.2018
08:48:46
вопрос в том, нафиг нужен трай, если нет кетча, и зачем чек без хендела?

Александр
10.09.2018
08:49:19
а где ты try увидел в гоу?

Алексей
10.09.2018
08:49:26
я ещё раз повторяю, try != check check без handle уже в принципе позволяет сократить код

заменив три строки одним словом

Google
Eldar
10.09.2018
08:49:43
спасибо капитан, что бы я без тебя делал!

речь о использовании конструкции обработки ошибки, без самой обработки ошибки. зачем она нужна?

Алексей
10.09.2018
08:50:45
спасибо капитан, что бы я без тебя делал!
ну видимо запутался бы, учитывая твоё сравнение try и check

без обработки

(ну если нужна обработка, то тогда уж handle или if err != nil)

Wingman
10.09.2018
09:11:42
Можно я немного офтопну? :) Никак не решу, как лучше хранить данные в реляционной бд (постгря). Данные - это связи между устройствами (сетевые линки). Самое простое - это табличка, скажем, links, в которой лежат интерфейсы (порты) обоих устройств. Ну, что-то вроде link: port1_id, port2_id Но тут вылазит дикое неудобство в том, что кто-то должен быть port1, а кто-то port2. Как это определять? Никак. То есть, все запросы по поиску будут вида where (port1=X and port2=Y) or where (port1=Y and port2=X) Как обычно такие задачи решаются? :)

Alexander
10.09.2018
09:19:33
можно при интсерте сортировать ид по возрастанию и вставлять соответственно в поля, доставать по тойже логике

Wingman
10.09.2018
09:20:21
тоже как-то через жопу

Mihail
10.09.2018
09:25:52
сохраняй как "port1_id:port2_id", "port2_id:port1_id"

и будут запросы вида where col1="X:Y" or col2="Y:X"

Pavel
10.09.2018
09:27:44
тоже как-то через жопу
а в чем проблема делать OR?

Wingman
10.09.2018
09:27:54
и будут запросы вида where col1="X:Y" or col2="Y:X"
ну так один фиг колхозить or/or

Pavel
10.09.2018
09:28:12
что такое or?)
WHERE cond1 OR cond2

Wingman
10.09.2018
09:28:17
а

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