Size: a a a

2020 August 13

h

hmirin in Go-go!
вопрос назрел) как правильно писать код. к примеру есть сокет, из которого данные через канал поступают в телебот. это все можно писать в одном файле или лучше раскидать по разным - в одном файле сокет, в другом бот?
источник

ВЩ

Владимир Щёголев... in Go-go!
Как вы относитесь к reflect.DeepEqual() при написании тестов? Может ли он сбоить? Я пытаюсь сравнить 2 одинаковые мапы, но возвращается false. В ошибке вывожу обе мапы, они ничем не отличаются. Чего я не замечаю? Какие еще есть способы сравнить 2 мапы?
источник

MM

Mansur Mansurov in Go-go!
Владимир Щёголев
Как вы относитесь к reflect.DeepEqual() при написании тестов? Может ли он сбоить? Я пытаюсь сравнить 2 одинаковые мапы, но возвращается false. В ошибке вывожу обе мапы, они ничем не отличаются. Чего я не замечаю? Какие еще есть способы сравнить 2 мапы?
Не уверен, но вродеб это связано с тем, что мапа не гарантирует порядок расположения элементов, вот они и разные.
источник

DP

Daniel Podolsky in Go-go!
Владимир Щёголев
Как вы относитесь к reflect.DeepEqual() при написании тестов? Может ли он сбоить? Я пытаюсь сравнить 2 одинаковые мапы, но возвращается false. В ошибке вывожу обе мапы, они ничем не отличаются. Чего я не замечаю? Какие еще есть способы сравнить 2 мапы?
я постоянно использую, и сбоев ни разу не видал.

совет: возьмите сторонний пакет, который формирует diff (например, https://github.com/go-test/deep), посмотрите, что за разницу оно там видит
источник

ВЩ

Владимир Щёголев... in Go-go!
Владимир Щёголев
Как вы относитесь к reflect.DeepEqual() при написании тестов? Может ли он сбоить? Я пытаюсь сравнить 2 одинаковые мапы, но возвращается false. В ошибке вывожу обе мапы, они ничем не отличаются. Чего я не замечаю? Какие еще есть способы сравнить 2 мапы?
в общем сам дурак, передавал другое значение и не заметил этого (а выводил нужное). А за пакет спасибо, возьму на вооружение
источник

DP

Daniel Podolsky in Go-go!
hmirin
вопрос назрел) как правильно писать код. к примеру есть сокет, из которого данные через канал поступают в телебот. это все можно писать в одном файле или лучше раскидать по разным - в одном файле сокет, в другом бот?
Недостаточно данных
источник

G

German in Go-go!
Daniel Podolsky
Недостаточно данных
Я так понимаю, речь о структуре проекта
Человек интересуется, можно ли писать всю логику в одном файле или же разносить по каталогам
источник

G

German in Go-go!
hmirin
вопрос назрел) как правильно писать код. к примеру есть сокет, из которого данные через канал поступают в телебот. это все можно писать в одном файле или лучше раскидать по разным - в одном файле сокет, в другом бот?
Если проект больше 300 строк, то лучше разнести. Вот пример типового проекта: https://github.com/golang-standards/project-layout
источник

h

hmirin in Go-go!
German
Я так понимаю, речь о структуре проекта
Человек интересуется, можно ли писать всю логику в одном файле или же разносить по каталогам
да, я просто на питоне немного пишу)) и там привык раскидывать логику по файлам, что не было мешанины. сейчас занимаюсь с го и хотел узнать как тут правильно делать. благодарю за инфу.
источник

с

сонная википедия... in Go-go!
hmirin
да, я просто на питоне немного пишу)) и там привык раскидывать логику по файлам, что не было мешанины. сейчас занимаюсь с го и хотел узнать как тут правильно делать. благодарю за инфу.
да мне кажется это в общем-то не от языка зависит(только если язык прям обязывает, как в Java/C#)
источник

DP

Daniel Podolsky in Go-go!
hmirin
да, я просто на питоне немного пишу)) и там привык раскидывать логику по файлам, что не было мешанины. сейчас занимаюсь с го и хотел узнать как тут правильно делать. благодарю за инфу.
тут у нас даже по пакетам принято раскидываться
источник

h

hmirin in Go-go!
сонная википедия
да мне кажется это в общем-то не от языка зависит(только если язык прям обязывает, как в Java/C#)
есть негласные правила в каждом языке - именование переменных(змейка, верблюд) или раскидывать код по каталогом.
источник

DP

Daniel Podolsky in Go-go!
у нас большая часть этих правил - гласные
источник

h

hmirin in Go-go!
Daniel Podolsky
у нас большая часть этих правил - гласные
на пример?
источник

DP

Daniel Podolsky in Go-go!
верблюд
источник

ВС

Владимир Столяров... in Go-go!
Сначала не понял, причём тут верблюд, потом дошло, что речь про CamelCase
источник

S

Sebor in Go-go!
А есть же одногорбые верблюды)
источник

h

hmirin in Go-go!
Sebor
А есть же одногорбые верблюды)
это приват методы))
источник

ВС

Владимир Столяров... in Go-go!
Sebor
А есть же одногорбые верблюды)
Когда не хотелось для разграничения области видимости затаскивать модификаторы
источник

VS

Vyacheslav Sitnikov in Go-go!
Народ, подскажите плз, есть ли где почитать на русском про БД? Ну или может кто подскажет тут. Интересует внутренняя кухня: Есть у меня открытое соединение, я так понял внутри него несколько коннекторов (как я понял), с соединением работают несколько горутин. Могут ли они работать одновременно? А если одна из них открывает транзакцию, вставляет данные, коммитит, другие в этот момент читают. Будут ли они ждать окончания транзакции (сама БД не блокирует операции чтения при записи). Как это соединение выглядит в БД, как одна сессия или как несколько? Можно ли регулировать количество коннекторов (если я правильно понял, что они есть) ?
источник