@proGO

Страница 245 из 1674
Maxim
11.10.2016
23:06:46
@kirilldanshin Кстати, КИРИИИИИИЛБЛ поправь хотя бы пару мест для поддержки HJSON, чтобы я суть уловил. Остальное я сам допишу. Пусть даже если твой пуш не сбилдится.

Zver
12.10.2016
03:35:23
Кто-нибудь может перевести на английский? Добавлена проверка реализации интерфейса типом, к которому идет обращение по указателю, иначе происходит неявное получение переменной и обращение ней, а так как указатель равен nil, то происходит паника. В результате проверки вызывается генератор напрямую для типа и затем создается указатель на него.

Мерлин
12.10.2016
04:26:13
Лол

hamper ?
12.10.2016
06:32:27
Но для каких-то задач NodeJS может быть крут, наверное.
я его использую обычно там где в желаниях заказчика нет требований на использование го, потому что разработка на нем несколько выгоднее выходит а по поддерживаемым нагрузкам аналогично с го (по памяти есть оверхед примерно в 5-10раз иногда это может быть критичным)

Google
Constantine
12.10.2016
09:06:38
в чем выгода измеряется?

Subbotin
12.10.2016
09:11:57
Очевидно ему так быстрее закодить

Constantine
12.10.2016
09:15:56
не, ну это понятно

но я именно про выгоду спросил )

Slava
12.10.2016
09:31:59
кстати

кто-нибудь проводил тест перфоманс python фреймворков и на go?

видел большой тест, там в 5-10 раз примерно го дергает питоновские

Jonh
12.10.2016
09:37:20
кто-нибудь проводил тест перфоманс python фреймворков и на go?
Вот такой есть https://magic.io/blog/uvloop-blazing-fast-python-networking/

Там больше про питон и сравнение идёт в однопоточном режиме

Slava
12.10.2016
09:39:23
не совсем то, но спасибо

hamper ?
12.10.2016
10:56:41
блин, гошные указатели однако иногда довольно неудобные...

https://play.golang.org/p/6GXBQz5bzo нельзя как то это без использования индекса сделать (как в переменной t)?

потому что в чуть более сложном коде оно начинает ругаться на cannot take the address of ...

Google
Zver
12.10.2016
11:02:36
Нельзя. Только через индекс можно получить ссылку на реальные данные переменнойв массиве и слайсе, либо сразу указатели хранить.

hamper ?
12.10.2016
11:04:10
ага, в общем в моем случае получается надо вообще указатели выкинуть потому что похоже нельзя взять указатель на элемент в мапе

Zver
12.10.2016
11:04:28
Хотя в данном случае проблемы и нет, по моему мнению.

Можно взять указатель на элемент в мапе.

Точно так же.

hamper ?
12.10.2016
11:05:54
https://play.golang.org/p/X16a-ZPm52

cannot take the address of m[i]

https://groups.google.com/forum/#!topic/golang-nuts/V_5kwzwKJAY

Zver
12.10.2016
11:10:56
Был не прав, попутал.

Видимо у мапов не постоянные адреса и ячейки могут перемещаться. Тогда если нужны именно указатели, то хранить указатели на данные.

Greg
12.10.2016
11:14:35
Интересный чатик :3

Zver
12.10.2016
11:17:23
cannot take the address of m[i]
На ячейки слайсов, кстати, тоже опасно хранить указатели. Слайсы при расширении тоже временами в другие области памяти перемещаются.

hamper ?
12.10.2016
11:18:06
надо бы запомнить на будущее

Roman
12.10.2016
11:18:14
Не хватает остроты ощущений после C?

dypa
12.10.2016
11:18:59
а смысл использовать указатели при текущей жизни? память дешевая же!

hamper ?
12.10.2016
11:19:37
ну таскать тысячи здоровых объектов из переменной в переменную думаю не лучший вариант

Zver
12.10.2016
11:19:41
Чтобы указывать куда-нибудь.

Lev
12.10.2016
11:19:51
object.changeSomething()

hamper ?
12.10.2016
11:20:38
выделение памяти это довольно ресурсоемкая операция, и если их там тысячи то можно неслабые тормоза получить

Google
dypa
12.10.2016
11:20:38
а объекты менять как? хехех
возвращать новый обьект :)

Lev
12.10.2016
11:21:20
возвращать новый обьект :)
это тогда лучше сразу в хаскель броситься )

hamper ?
12.10.2016
11:21:38
вот в моем случае надо протащить сотню крупных объектов несколько тысяч раз в секунду

dypa
12.10.2016
11:22:07
теперь яснее стало, спс за ответы

Zver
12.10.2016
11:23:17
теперь яснее стало, спс за ответы
В пхп обьекты это тоже указатели.

Просто неявные.

dypa
12.10.2016
11:23:57
В пхп обьекты это тоже указатели.
в пхп я отлично знаю что и как, а в golang нет.

Roman
12.10.2016
11:28:21
hamper, ну положим в Go нет объектов, есть структуры

На структуру может указывать указатель.

В чем проблема?

Zver
12.10.2016
11:29:59
Да у хампера нет этой проблемы. )

У него был вопрос.

Zver
12.10.2016
11:30:41
По слайсам и мапам.

Кто знает английский и сможет перенести пару предложений на него? (не транслятором)

Грамотно.

Roman
12.10.2016
11:32:40
Указатель на элемент в мапе и на структуру - это немного разные вещи.

Zver
12.10.2016
11:34:15
На элемент в мапе не может быть указателя, как выяснилось. А вообще суть одна и также, что указатель на структуру, что на какой-нибудь инт.

Roman
12.10.2016
11:43:56
Зачем нужен указатель на элемент в мапе? Почему нельзя в элементе мапы хранить указатель на объект? Я не глумлюсь, мне интересно какую проблему люди пытаются решить.

Kerrigan
12.10.2016
11:44:30
можно

помню в каком-то докладе про го говорилось, что ссылки как-то не очень влияют на гц, но это было еще до 1.5 даже

Google
hamper ?
12.10.2016
12:22:09
На структуру может указывать указатель.
если структура лежит в мапе на нее указатель не получить

Zver
12.10.2016
12:24:39
если структура лежит в мапе на нее указатель не получить
Так хранить в мапе указатель на структуру.

hamper ?
12.10.2016
12:25:30
ну это да, можно, не хочется мне переписывать из за этого половину проекта который не я писал ))

Slava
12.10.2016
12:26:53
народ, кстати какой фреймворк пользуете? goji или gin?

Zver
12.10.2016
12:27:02
А придется.

Kerrigan
12.10.2016
12:27:07
гориллу

Valentin
12.10.2016
12:43:52
Кто сидит на VSCode, подскажите плиз как правильно настроить GOPATH в редакторе чтобы он корректно видел каталог src в папке проекта? Или vscode настолько туп, что прописывается только в глобальных настройках (go.gopath)

Vladislav
12.10.2016
12:45:13
у меня в глобале прописан

Admin
ERROR: S client not available

Zver
12.10.2016
12:45:31
Это так задумано в глобальных настройках. И зачем папка src? А вообще смотреть файл настроек проекта.

Может вы как-то не правильно проект организовали?

Valentin
12.10.2016
12:48:23
Это так задумано в глобальных настройках. И зачем папка src? А вообще смотреть файл настроек проекта.
как я могу его неправильно организовать когда в Go положено в корень класть main.go, и все свои пакеты в src

Yung
12.10.2016
12:48:45
А, не так тебя понел, проехали

Valentin
12.10.2016
12:49:58
Это совсем не так.
можно всё в корень еще помоему но тогда билдить через go get -u если я не путаю, где-то видел такой подход но мне не понравился

Это совсем не так.
а какие способы организации еще удобные?

Zver
12.10.2016
12:54:36
Найдите а гитхабе исходники syncthing посмотрите. Или другие утилиты на гоу посмотерь. Сейчас попробую руководство найти, где-то попадалось.

Valentin
12.10.2016
13:02:34
ну в syncthing уродский подход, привязка к github.com

Zver
12.10.2016
13:04:52
Ну вообще это норма для привязки в гиту в гоу. Но так же можно ораганзовать проект без привязки, чисто локальный. Тогда просто пути на свои внутренние пакейджи будет относительными и все.

Google
Zver
12.10.2016
13:06:06
https://golang.org/doc/code.html Здесь кратко очень, но хоть что-то.

Valentin
12.10.2016
13:06:55
привязка плохая такая по мне, а вдруг РосКомНадзор опять забанит гитхаб и что делать.. должно компилиться свободно, без участия инета/сайтов

ок, гляну, спасибо

Zver
12.10.2016
13:07:21
Так оно и будет компилиться.

Ведь все файлы локально лежат.

Subbotin
12.10.2016
13:08:23
Пользователь Zver скинул ссылку на golang.org. Глаз прочитал как zoolang

Vladislav
12.10.2016
13:08:24
Go get просто скачивает их в gopath

Zver
12.10.2016
13:08:30
http://www.golangpro.ru/2013/12/kak-pisat-kod-na-golang.html Русский перевод статьи выше.

Valentin
12.10.2016
13:12:21
Go get просто скачивает их в gopath
это да, но зачем эти лишние действия.. клонируешь с гита, потом прописываешь gopath, потом еще и go get

ладно еще когда подтягиваешь вендор, но свои же пакета из этого проекта подтягивать это тупость

Vladislav
12.10.2016
13:14:11
И если это open-source то лучше прописывать именно так

Valentin
12.10.2016
13:14:57
ладно, попробуем так, может и зря тут я критикую этот подход

Andrew
12.10.2016
13:16:47
Такой вопрос, а GOPATH для каждого проекта должен быть свой? Или mkdir $GOPATH/src/github.com/user/hello так правильно?

т.е. каждый проект будет в каталоге github.com/user

Zver
12.10.2016
13:17:18
И go get для своего проекта совсем не обязательно. Свой можно просто клоном завести.

Valentin
12.10.2016
13:17:51
Такой вопрос, а GOPATH для каждого проекта должен быть свой? Или mkdir $GOPATH/src/github.com/user/hello так правильно?
лично у меня GOPATH=КАТАЛОГ_ПРОЕКТА:$HOME/gopath в $HOME/gopath лежит вендор, типо mgo, gorilla в итд

чтобы для разных проектов не тянуть каждый раз тот же драйвер монги

Zver
12.10.2016
13:19:09
Такой вопрос, а GOPATH для каждого проекта должен быть свой? Или mkdir $GOPATH/src/github.com/user/hello так правильно?
Принято общий использовать, но в каких-то случаях можно и персонально указать.

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