aadz
Знаете, что лежит в go1.9/bin?
В общем, надо не машину перезагружать, а снести все Go нахер для начала. Потом сесть и внимательно ознакомиться с https://golang.org/doc/install
После полного ознакомления без лишних рыпаний уже надо сделать лицо как у старого аптекаря, что бы с таким лицом тупо и внимательно сделать все как положено. Некоторым такой метод помогает :)
Vladislav
Там сейчас необязательно устанавливать GOPATH же.
Anonymous
Хотелось. бы сказать всем спасибо за помощь.
Vladislav
Он по умолчанию на ~/go
Anonymous
"работаем дальше" (с) Веб-студия Сокол
Anonymous
у меня есть и ~/go
Anonymous
Там лежат другие приколы
aadz
aadz
работаем дальше
Anonymous
Завтра уже буду наводить порядок
Anonymous
Увы, сейчас тестировщики стоят на коленях, умоляю выкатить изменения.
aadz
тестировщики тебя в конечном счете уроют (и будут правы), потому что ты любишь делать что-то до того, как понял, что ты делаешь :(
Anonymous
Интересное заявление.
Anonymous
ainu
Он сыграет прямо ого-го когда я данные для сравнений тягаю с диска
ainu
А когда все в памяти, есть способы лучше.
ainu
Для 45000 элементов пройтись циклом быстрее чем бинарным поиском по немуже 500-700 раз
ainu
Чисто за счёт простоты
ainu
Даже обычный map[key]=value работает быстрее
ainu
Если надо искать value по key
ainu
В итоге если искать просто по массиву получается O(N)
ainu
А с btree o(m*t*logt(n))
ainu
Mysql не дурак, он индексами подготавливает временные данные и ищет числовые значения перебором не зря
ainu
ainu
спс
ainu
Хм, ну да, чуть чуть написано что использует для минимизации обращения к диску, подробнее скажет EXPLAIN, он мне и говорит тоже что и ожидается.
Alexey
Коллеги, что дешевле struct{} или bool? К примеру я делаю мапу, ключем которой будет являться какое-то число например, а значение должно быть что-то, так что лучше юзать для этого "что-то"?
ainu
ainu
не int32 и просто int
ainu
быстрее чем bool
ainu
правда это была прошла версия Go сейчас могло поменяться
Anonymous
Alexey
недавно услышал что struct{} занимает меньше чем bool
Anonymous
Alexey
верно я понимаю, что struct{}{} вообще никак не аллоцируется в памяти?
Anonymous
ну, он занимает 0 (ноль) байт :)
Alexey
я пытался это просто через unsafe.Sizeof прогнать, но компилятор ругнулся) invalid expression unsafe.Sizeof(<T>)
Alexey
Anonymous
Alexey
хм, тогда значит что-то делал не так
Anonymous
struct{} вместо struct{}{}, видимо
Alexey
Anonymous
Alexey
aadz
Так можно же свой set написать, кому какой надо
aadz
При чем там чуть ли не все методы этого set получаются на 1-2 строчки, а значит, они будут инлайниться и быстро работать
Anonymous
Anonymous
😁
Vasily
да
Vasily
там есть флаг который при сборее гаорит что заинлайнилось и что на хип ушло
Anonymous
Vasily
нет под рукой. поищи доклад Славы Бахмутова, он как раз рассказывал про эскейп анализ
Anonymous
Anonymous
Нашел, если кому интересно - http://m0sth8.github.io/runtime-1/#16
Alex
Подскажите для golang библиотеку которая умеет сравнивать тексты. И показывать измененные, удаленные или добавленные блоки.
Мерль
Alex
спс
Bogdan
Приветствую
Кто работает с этой либой https://github.com/go-pg/pg подскажите, пожалуйста
Bogdan
есть такая модель
type Country struct {
validation.Validatable `json:"-"`
tableName struct{} `sql:",countries,alias:country" json:"-"`
ID int `sql:",pk" json:"id"`
CreatedAt *time.Time `sql:",notnull" json:"created_at"`
UpdatedAt *time.Time `sql:",notnull" json:"updated_at,omitempty"`
Code uint `sql:",notnull;unique" json:"code"`
Name string `sql:",notnull;unique" json:"name"`
}
Bogdan
Делаю такую дичь:
db.DropTable(&models.Country{}, &orm.DropTableOptions{IfExists: true})
падает с формулировкой reflect: NumField of non-struct type
Bogdan
что за фигня?
Serg
Ребят, подскажите.
Хочу написать сервис, которые по SNMP взаимодействует с коммутаторами в сети. Коммутаторы могут быть разных производителей, моделей, прошивок. А значит один и тот же метод для одного может кардинально отличаться по содержанию от другого коммутатора.
Вот думаю, стоит ли попробовать заморочиться с Package plugin, который в 1.8 завезли, и для каждой модели оформить плагин со всеми его методами? Или пока рано?
Мерль
Максим
Прикольно, не знал что такое вообще есть)
Илья
Стоит заморочиться если есть желание попробовать плагины, а так не стоит, достаточно интерфейса
Anonymous
на основе плагинов делают горячую перезагрузку, но это не прод решение
https://habrahabr.ru/post/318896/
Lee
Кто-то юзает что-то для покрытия кода тестами?
Lee
Точнее: слышал что в Идее есть такой плагин, подсвечивающий "непокрытие"
Kirill
vscode подсвечивает
Alexey
codecov.io
Alex
goconvey.co
Alex
Kirill
как?
Запускаешь из него тесты пакета, после чего он прям в редакторе все подсвечивает
Lee
Lee
Я обязан переформулировать вопрос.
Кто посоветует какой-то гайдлайн как писать тесты.