Sanity = nil
что это еще за покемон
Oleksandr
Думаю переходить на Astra Linux, так как в Red Star шпионского ПО не достаточно для 2022 года
MDWIT
самая полезная задача жса это рисовать кнопочки
самая полезная задача js это работать с браузерными инструкциями и api, точно так же как и ассемблер, в который компилируется go) Только у них инструкции для разных областей
Айрат
не люблю когда принижают чей то труд или какие то языки
Айрат
обычно у тех кто так делает ч маленький, в лупу не увидеть, вангую
Ростислав
Подскажите, можно ли как-то при маршалирование структуры получить вместо {name: name, surname: surname} Это { name: name surname: surname }
Илья
Да
Илья
https://pkg.go.dev/encoding/json#MarshalIndent
Илья
json.MarshalIndent(data, "", "\t")
Ростислав
Спасибо
Oleksandr
В го можно обратится к последнему елементу по отрицательному индексу? Типо array[-1]
Oleksandr
Жалко
Oleksandr
И такой вопрос. Почему нельзя положить ошибку в константу. По идее ошибка никогда не должна изменится и бьіло бьі логично хранить ее в константе
Oleksandr
а ты на ошибку эту глядел?
Const initializer 'errors.New("unknown event type")' is not a constant
Oleksandr
Инициализатор не константа. Информативно
Andrey
Инициализатор не константа. Информативно
я попрошу разработчиков языка, чтобы они писали ошибку так: дорогой Александр, вы допустили глубочайшую ошибку в написании кода, тем самым показали не понимание работы компилятор и устройства выполнения программ. Вам следует поучить теорию в параграфе 322 главе 666
Sanity = nil
ААХАХАХХАХА чел ты просто гений
Oleksandr
Вместо того, чтобьі издеваться, можно нормально обьяснить
Vladislav
вызов функции из пакета errors
Grigorij
без издевания не интересно же
Кіт ✙
Кстати, а какие требования должны быть к константе? Иммутабельность? Почему структуру низя константой объявить? А если можно, то почему тогда ошибку низя?
Vladislav
можно и то и другое
Vladislav
а вот вызывать функцию - нельзя
Oleksandr
Походу константьі определяются до начала работьі програмьі
Vladislav
объявил ошибку константой как мужчина https://go.dev/play/p/nM04taFHsZh
Oleksandr
type errorString string const ConstError = errorString("Oops!") Почему строка работает как функция?
Vladislav
это не функция, это приведение типа
Vladislav
string к errorString
Vladislav
а для errorString уже реализован интерфейс error
Vladislav
вообще вся эта инфа есть в go tour, я не понимаю, зачем вы задаёте все эти вопросы
Oleksandr
А долго тур проходить?
Vladislav
1-2 вечера
Vladislav
касательно того вопроса - ошибки часто объявляют переменной, а не константой, это тоже норм
Vladislav
и тогда errors.New сработает при инициализации
Oleksandr
касательно того вопроса - ошибки часто объявляют переменной, а не константой, это тоже норм
Я так и понял. Просто в жс обьічно все что можно делают константами
Oleksandr
Но видемо в го константьі другие
Vladislav
в го типы другие
Vladislav
и вычисляются константы при компиляции, а не в рантайме
Nikita
Я так и понял. Просто в жс обьічно все что можно делают константами
Да вроде всегда нужео делать все константой, если это возможно, так код будет поидее более читаемый и безопасный Просто константы в го и в js разные
Oleksandr
Константьі должньі бьіть не изменяемьіе. А в жс часто даже обьектьі делают константами, а потом их начения изменяют
Oleksandr
Вобщем, жаваскриптерьі странньіе
Илья
ничего нового
Vladislav
а что объект внутри мутабельный - это дело третье
Vladislav
чтобы за языки рассуждать неплохо бы оба хорошо знать
Sanity = nil
А ты прикинь, есть люди которые на жс пишут не только из-за денег 🥶
Vladislav
А ты прикинь, есть люди которые на жс пишут не только из-за денег 🥶
конечно, на нём писать приятнее, чем на го, да и по скорости он уже стал сопоставим. кому после этого голанг нужен?
Vladislav
https://betterprogramming.pub/http-server-performance-nodejs-vs-go-397751e8d275
Oleksandr
А ты прикинь, есть люди которые на жс пишут не только из-за денег 🥶
Нуу. ЖС намного проще в освоении и писать на нем сильно бьістрее
Oleksandr
Но большинство разрабов (даже опьітньіх) не используют современньіе возможности язьіка. Про существование мапов и колекций большенство жсеров даже не в курсе. И в итоге все используют какието костьіли для реализации функционала єтих структур. О более сложньіх вещах говорить не стоит
Sanity = nil
Добавь уже русскую раскладку,емае
Oleksandr
Не. Це не законно
Sanity = nil
Не. Це не законно
Добре друже
MDWIT
https://betterprogramming.pub/http-server-performance-nodejs-vs-go-397751e8d275
Штош, пора делать свой http server perfomance)
Sanity = nil
https://www.techempower.com/benchmarks/#section=data-r21
MDWIT
https://www.techempower.com/benchmarks/#section=data-r21
забавно что js сразу после плюсов и раста)
Sanity = nil
Да жесть,сам от жизни прозрел
🅞leksiy
https://betterprogramming.pub/http-server-performance-nodejs-vs-go-397751e8d275
Если добавить полезную нагрузку, то нода выжрет свой один поток и просядет, какой смысл этого бенча, если go будет распределять нагрузку по всем доступным ядрам и делать во множество потоков?
Oleksandr
Тоесть пора обратно на жс перелазить?
MDWIT
точнее она однапоточная, но ее эвентлуп и микротаски вполне себе многопоточные
Vladislav
Если добавить полезную нагрузку, то нода выжрет свой один поток и просядет, какой смысл этого бенча, если go будет распределять нагрузку по всем доступным ядрам и делать во множество потоков?
а если включить TLS средствами самого go, то го прососёт ещё больше, т.к. в ноде будет быстрая реализация OpenSSL, а в го - встроенный тормозной crypto/tls касательно потоков, в JS можно балансировать нагрузку между несколькими экземплярами процесса. в условиях прода - по любому придётся несколько экземпляров запускать. вот только JS с однопоточным подходом избавлен от гемора с мьютексами и синхронизацией потоков
🅞leksiy
точнее она однапоточная, но ее эвентлуп и микротаски вполне себе многопоточные
Я говорю про полезную нагрузку, если будут проводиться вычисления, то эвентлуп нихрена не поможет, так они будут происходить последовательно
🅞leksiy
Каким образом?
MDWIT
Каким образом?
эвентлуп не забивается просто так, скорость будет падать, но запросы будут обрабатываться асинхронно без блокировки ввода и вывода по мере силы процессора
🅞leksiy
Объясню на пальцах, у тебя сотня официантов, но один повар
MDWIT
у меня есть кейсы, где гошный сервак не выдерживает то количество запросов что через себя пропустил сервер ноды