The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Выпуск языка программирования Go 1.24"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Выпуск языка программирования Go 1.24"  +/
Сообщение от opennews (??), 12-Фев-25, 10:55 
После шести месяцев разработки представлен релиз  языка программирования Go 1.24, развиваемого компанией  Google при участии сообщества. Язык сочетает высокую производительность, свойственную компилируемым языкам, с такими достоинствами скриптовых языков, как простота написания кода, высокая скорость разработки и защита от ошибок.   Код проекта распространяется под лицензией BSD...

Подробнее: https://www.opennet.me/opennews/art.shtml?num=62710

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения [Сортировка по ответам | RSS]

3. Сообщение от Аноним (3), 12-Фев-25, 10:59   –5 +/
не хватает нормального препроцессора условной конпеляции. то что есть на тэгах и уровне модулей очень убогое
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #5, #24, #35

5. Сообщение от Аноним (5), 12-Фев-25, 11:01   +11 +/
Это должно решаться кодогенерацией. Потому что явное лучше неявного.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #3 Ответы: #27, #46

6. Сообщение от Аноним (6), 12-Фев-25, 11:02   –13 +/
делал замеры, существенно медленнее крестов, и всего в 2 раза быстрее интерпретируемого php. совершенно непонятна ниша этого чуда от Гугла  
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #8, #10, #21, #95, #190, #215, #232, #274, #283

7. Сообщение от Смерть бандерам и хохлонацистам (?), 12-Фев-25, 11:09   +/
Хорошая замена питону, а так же шлаку типа перла и руби. Только, кажись, не особо то оно взлетело, судя по количеству репозиториев на гит хабе.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #12, #15, #29, #72

8. Сообщение от Аноним (8), 12-Фев-25, 11:16   +7 +/
Быстрее в чем? Надо ещё потребление и скорость разработки смотреть и ещё кучу метрик.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #6 Ответы: #17, #25, #90

9. Сообщение от Самый Лучший Гусь (?), 12-Фев-25, 11:19   +4 +/
В принципе не плохой язык. Странно что для него интерфейс для драйверов ядра линукс нет.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #14, #23, #26, #30, #199, #290, #291

10. Сообщение от Самый Лучший Гусь (?), 12-Фев-25, 11:20   +4 +/
С ПХП сравнивать не чесно потому что это очень оптимизированый язык. Надо сравнивать с питоном.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #6 Ответы: #58

11. Сообщение от ijuij (?), 12-Фев-25, 11:24   –2 +/
> В стандартную библиотеку включены реализации криптоалгоритмов, одобренных в стандарте безопасности FIPS 140-3.

Это же применяется только в США, зачем это нужно для всех? Я не совсем понимаю, в каких случаях это используется.

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #16, #28, #34, #36, #76

12. Сообщение от Аноним (12), 12-Фев-25, 11:25   +/
Го оказался слишком идиотматический.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #7 Ответы: #18

14. Сообщение от Аноним (14), 12-Фев-25, 11:27   –1 +/
Злонамеренные атаки на ядро будут продолжаться. Пока Линус есть, отобьются. Что будет после него, неизвестно.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #9 Ответы: #22

15. Сообщение от ijuij (?), 12-Фев-25, 11:28   –3 +/
> судя по количеству репозиториев

Судить не умеете! Нужно судить по количеству звёздочек.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #7 Ответы: #19

16. Сообщение от Самый Лучший Гусь (?), 12-Фев-25, 11:34   +1 +/
В принципе пока что это самые лучшие алгоритмы
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #11

17. Сообщение от Аноним (17), 12-Фев-25, 11:41   +1 +/
> и скорость разработки

Моя любимая песня. Как в советском анекдоте про плохую и хорошую новости.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #8

18. Сообщение от анон (?), 12-Фев-25, 11:42   +/
Для Вас? Или Вы за всех решили сразу?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #12 Ответы: #20

19. Сообщение от Аноним (17), 12-Фев-25, 11:42   +2 +/
Судить нужно по вопросам нубов на стаковерфлоу.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #15

20. Сообщение от Аноним (12), 12-Фев-25, 11:45   –1 +/
Да, не благодарите.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #18

21. Сообщение от funny.falcon (?), 12-Фев-25, 11:47   +3 +/
Когда говорите, что что-то сравнивали, нужно описывать, на каких задачах и какие способы решения.

В PHP вся стандартная библиотека написана на С. Если ваше решение выполняло мало PHP кода и в основном дергало библиотечные функции, оно будет довольно быстрым.

В Go медленная рефлексия. Если ваше решение использовало стандартный encoding/json, да ещё, не дай бог, с any/interface, оно будет медленным.

Но на Go расширения пишутся на Go. Возьмите быстрые пакеты с генерацией кода, и решение той же задача станет в несколько раз быстрее.

И по мере усложнения задачи и её решения скорость не будет сильно падать, т.к. вы будете писать на том же Go. А вот с PHP скорость будет падать быстро.

Конечно, современные версии PHP сильно ускорились, и JIT хорошо прогрессирует. Я тоже думаю, что современный PHP недооценен. Но всё же Go обгонит его «в любое время дня и ночи».

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #6 Ответы: #33, #80

22. Сообщение от Аноним (12), 12-Фев-25, 11:52   +1 +/
Линусу параллельно каким языком пишут его ядро при состоянии в 50 лямов и з/п в полтора мегабакса в год.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #14

23. Сообщение от Bvz1 (?), 12-Фев-25, 11:52   +2 +/
Что бы каждый драйвер с собой еще таскал гошный рантайм?))
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #9 Ответы: #44

24. Сообщение от Аноним (24), 12-Фев-25, 11:58   +2 +/
Разве условную компиляцию нельзя сделать без препроцессора? Пример - D.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #3 Ответы: #96

25. Сообщение от Аноним (24), 12-Фев-25, 12:00   +2 +/
Ну неужто Пых по скорости разработки проиграет?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #8 Ответы: #164

26. Сообщение от Аноним (24), 12-Фев-25, 12:05   +2 +/
"Неплохой", в вашем контексте.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #9 Ответы: #163

27. Сообщение от Аноним (3), 12-Фев-25, 12:05   +/
скажи это авторам Spring Boot, правда это Java, но суть понятна
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #5 Ответы: #78

28. Сообщение от Аноним (24), 12-Фев-25, 12:07   +/
Нужно ФСТЭК ?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #11 Ответы: #180

29. Сообщение от Аноним (33), 12-Фев-25, 12:11   –3 +/
На перле 20 лет назад работал хайлоад и сейчас работает. Perlbal до nginx и имел сравнимую производительность. Посмотрите MogileFS и другие мощные проекты.
На питоне и руби веб если и работал, то с нагрузками типа 1 запрос в секунду. Даже не надо сравнивать. Питон и руби - это для программ, запускаемых у человека на компе, где не имеет значения, скрипт работает 1 минуту или 10, лишь бы отработал. Это совершенно разные миры. Не говоря о том, что питон и руби буквально срисованы с перла, но создатели видели разные фатальные недостатки.

Голанг сейчас основной язык веб бэкэнда в коммерческой разработке. Оценить степень его внедрения можно по развитию ключевых компонентов, используемых в разработке. В том числе самого языка. У полумертвых языков развитие идет в сторону отвлеченных вещей, а с голангом все наоборот.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #7 Ответы: #31, #32, #37, #171, #195

30. Сообщение от Аноним (30), 12-Фев-25, 12:18   +3 +/
Вы ещё для джавы сделайте. Го на сборщике мусора построен, он памяти в рантайме жрёт - яибу. Да и как язык довольно убогий. Никакой производительности Си у него разумеется нет - именно поэтому лучшее решение на го всё равно работает в два раза медленнее, чем на Си и Расте на techempower.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #9 Ответы: #200

31. Сообщение от Аноним (12), 12-Фев-25, 12:19   +2 +/
> Голанг сейчас основной язык веб бэкэнда в коммерческой разработке

Java.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #29 Ответы: #42, #83

32. Сообщение от Аноним (32), 12-Фев-25, 12:20   +1 +/
> На питоне и руби веб если и работал, то с нагрузками типа 1 запрос в секунд

Питоний Django смотрит на тебя с недоумением.

> Не говоря о том, что питон и руби буквально срисованы с перла

Питон буквально срисован с Перла? Лол, да ты Питон даже в глаза не видел, но умничаешь о том, как он там где работает.

На, почтай и ее не позорься болше своей экспертизой:

https://en.m.wikipedia.org/wiki/History_of_Python

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #29

33. Сообщение от Аноним (33), 12-Фев-25, 12:21   –1 +/
Проблема PHP в том, что архитектурно это до сих пор CGI. Отработал - умер. И на каждый обработчик создается рантайм. Все работает синхронно. Много предопределенного поведения и архаики. ООП язык тоже архаика. Опыт с голангом показывает, что в корпоративной разработке и без ООП хорошо, никто не умер.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #21 Ответы: #45, #106, #108

34. Сообщение от Аноним (30), 12-Фев-25, 12:23   –5 +/
Гугл - американская контора, все лучшие программисты работают в Штатах, все лучшие компании делающие софт - в Штатах, двигатель софтового прогресса - в Штатах, лучшие зарплаты - в Штатах, и так далее. Все остальные - пассивные получатели выгоды от того, что происходит в Штатах.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #11 Ответы: #38

35. Сообщение от Аноним (3), 12-Фев-25, 12:24   +4 +/
Если у деда, пока спит, спереть M4 то вполне могут в гошке и define, прямо как в сишке )
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #3 Ответы: #162

36. Сообщение от zog (??), 12-Фев-25, 12:24   +/
Не только в США
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #11

37. Сообщение от macOS (?), 12-Фев-25, 12:28   +1 +/
> JS сейчас основной язык веб бэкэнда в коммерческой разработке.

Чуток подправил. Благодарить не стоит.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #29 Ответы: #41

38. Сообщение от ijuij (?), 12-Фев-25, 12:28   +/
> Все остальные - пассивные получатели выгоды от того, что происходит в Штатах.

Индия (известна своими IT-услугами и аутсорсингом) и Китай (DeepSeek, Alibaba, Tencent, Baidu) с тобой категорически не согласны.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #34 Ответы: #52, #139

41. Сообщение от Аноним (32), 12-Фев-25, 12:32   +/
Ты фронтенд от бэкэнда не отличаешь?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #37 Ответы: #49, #74

42. Сообщение от Аноним (42), 12-Фев-25, 12:33   +1 +/
Legacy. Будет дорабатывать в банках вместе коболом. А новые большие проекты на этом уже не пишут.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #31 Ответы: #50

44. Сообщение от Аноним (3), 12-Фев-25, 12:37   +1 +/
жаль нет сборщика мусора, уничтожающего устаревшее железо. Отличная была бы идея
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #23 Ответы: #197

45. Сообщение от Аноним (273), 12-Фев-25, 12:40   +/
>Проблема PHP в том, что архитектурно это до сих пор CGI. Отработал - умер.

Зато нет утечек памяти и ресурсов.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #33 Ответы: #81

46. Сообщение от Аноним (46), 12-Фев-25, 12:41   +3 +/
> явное лучше неявного

нет конечно. это популярный тезис, тем не менее он попросту не работает. если сделать "явным" все, то код получится громоздким. так говорят обычно потому, что сравнить не с чем и кажется что сделал явным и разницы все равно нет. но ничего хорошего так не сделаешь, только лапшу которую потом все труднее и труднее поддерживать.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #5 Ответы: #57

47. Сообщение от Аноним (42), 12-Фев-25, 12:41   +2 +/
Плохо, что go-программму уже невозможно скомпилировать без подключённого интернета.

Будучи на даче, обнаружилось, что go build без интернета совсем не работает (выдаёт ошибки подключения к сети). То есть ни одну программу невозможно собрать оффлайн. И это несмотря на то, что все зависимости уже установлены и есть в кэше.

Как воспроизвести:

1) Вначале с включённым интернетом компилируем вот такой hello.go https://pastebin.com/96uYkp4P Он соберётся, при этом все зависимости скачаются автоматически.
2) Теперь отрубаем интернет, создаём новый каталог, в который помещаем только hello.go, и пробуем его собрать. Невозможно, так как лезет в сеть и не может приконнектиться:
exit status 128:
fatal: unable to access 'https://github.com/mattn/go-runewidth/': Could not resolve host: github.com
fatal: unable to access 'https://github.com/nsf/termbox-go/': Could not resolve host: github.com


А go mod vendor выдаёт:

github.com/mattn/go-runewidth: no required module provides package github.com/mattn/go-runewidth; to add it:
go get github.com/mattn/go-runewidth
github.com/nsf/termbox-go: no required module provides package github.com/nsf/termbox-go; to add it:
go get github.com/nsf/termbox-go


Что за дейбилизм? Смотрите первый пункт, зависимости-то уже скачаны и в кэше!
А без сети go get уже и не сделать!

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #53, #63, #86, #114, #123, #154, #226, #261

48. Сообщение от Аноним (273), 12-Фев-25, 12:45   +1 +/
>Обеспечена полная поддержка обобщённых псеводонимов типов

Надо же, а как же возможность выучить язык за пару вечеров?
>В команду "go" для Go-модулей добавлен механизм отслеживания исполняемых зависимостей

Того и глядишь, за лет двадцать доростут по удобству до php

Кто-то может объяснить, зачем голангу более пятиста мегабайт виртуальной памяти даже в hello world?

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #55, #87, #265

49. Сообщение от Аноним (49), 12-Фев-25, 12:47   +/
Он всё правильно пишет.

NodeJS сейчас основной язык веб бэкэнда в коммерческой разработке.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #41 Ответы: #68, #125

50. Сообщение от Аноним (12), 12-Фев-25, 12:48   +4 +/
Это го так нехило вставляет что появляются такие смешные галлюцинации?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #42 Ответы: #191

51. Сообщение от Аноним (49), 12-Фев-25, 12:48   –3 +/
Rust здорового человека.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #54, #177

52. Сообщение от Аноним (273), 12-Фев-25, 12:49   +/
>DeepSeek, Alibaba, Tencent, Baidu

Кто это такие? Где их в реальной жизни можно увидеть?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #38 Ответы: #61, #101

53. Сообщение от Аноним (273), 12-Фев-25, 12:56   +/
Не знаю, как в других языках, но в ocaml сборка проекта и установка зависимостей делаются разными командами, и при сборке вы даже не заметите задержек, если у вас не будет интернета.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #47

54. Сообщение от Аноним (273), 12-Фев-25, 12:58   +/
Может быть - borgo. Поскольку груз обратной совместимости с go никто не отменял.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #51 Ответы: #65

55. Сообщение от ijuij (?), 12-Фев-25, 12:59   –1 +/
Ты документацию почитай и используй флаги.

go build -ldflags="-w -s" .
> -s    disable symbol table
> -w    disable DWARF generation

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #48 Ответы: #70

57. Сообщение от Аноним (57), 12-Фев-25, 13:01   +1 +/
Если использовать кодогенкрацию вместо неявного, то эта лапша останется за кадром и ее не нужно поддерживать
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #46 Ответы: #62

58. Сообщение от Аноня (?), 12-Фев-25, 13:03   +/
А лучше с bash
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #10

61. Сообщение от Аноня (?), 12-Фев-25, 13:08   +2 +/
Их можно найти на фондовом рынке США, который просел только от DeepSeek на 1 триллион долларов. "А король то голый". Если считать выхлоп цена/качество, то Россия будет далеко впереди США.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #52 Ответы: #67, #79, #172

62. Сообщение от Аноним (46), 12-Фев-25, 13:10   +2 +/
хорошо бы если так, но к сожалению нет. кодогенерация остается за кадром, но это - шаг всторону - растрел. то есть вроде все работает, но как только понадобится код как-то масштабировать, так сразу надо туда лезть и все переделывать. а это сложно потому что там куча лапши и по ней надо долго залить, чтобы вообще понять что там происходит, плюс она хрупкая. при этом масштабирование - самое важное свойство кода для бизнеса.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #57 Ответы: #71, #161

63. Сообщение от Аноним (12), 12-Фев-25, 13:15   +1 +/
Прямая привязка к githаbу это фейл. Представьте мейкфайл, который требует скачать доп. васяносурсы по протоколу gopher с адреса, недоступного ещё с начала 90х. Мейкфейл.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #47 Ответы: #104

65. Сообщение от Аноним (12), 12-Фев-25, 13:24   +/
Тогда Cargo?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #54

66. Сообщение от anonymous (??), 12-Фев-25, 13:29   –2 +/
Посмотрим как оно будет бутстрапится. Вроде как через одну версию можно перепрыгивать. Уже не rust, еще не gcc. gcc может через несколько версий перепрыгивать.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #99, #136

67. Сообщение от Аноним (273), 12-Фев-25, 13:30   +/
>Их можно найти на фондовом рынке США

Спасибо. Вот гугл можно найти на почти на любом случайном смартфоне. А эти компании - неизвестно где.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #61 Ответы: #69, #251

68. Сообщение от Смузихлеб забывший пароль (?), 12-Фев-25, 13:33   +/
был ведь питон
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #49

69. Сообщение от Смузихлеб забывший пароль (?), 12-Фев-25, 13:37   +1 +/
То что это обычный предустановленный мусор ни о чём не говорит. Гугол в принципе много мусора пропихивает в смартфоны, который даром не нужен
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #67 Ответы: #174

70. Сообщение от Аноним (273), 12-Фев-25, 13:39   –1 +/
Это к чему? В момент появления заявлялось, что для любых программ хватит того минимума, что был реализован в go. Потом по мелочам его стали править - то дженерики введут, то for расширят.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #55 Ответы: #219

71. Сообщение от Илья (??), 12-Фев-25, 13:43   +2 +/
Хз, откуда ты такие проблемы взял. В дотнете используем кодогенераторы, они генерируют простой очевидный удобный код
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #62

72. Сообщение от Илья (??), 12-Фев-25, 13:45   +2 +/
Ник классный у тебя. За место питона лучше дотнет брать, в нём ООП в отличие от ГО есть
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #7 Ответы: #196

74. Сообщение от Аноним (74), 12-Фев-25, 13:50   +/
Жс давно вышел за пределы фронта. Лет эдак 15 назад. Так что можно поздравить Вас с разморозкой)))
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #41 Ответы: #85

76. Сообщение от Аноним (-), 12-Фев-25, 13:53   –1 +/
> Это же применяется только в США, зачем это нужно для всех?

Потому что го пишут в первую очередь для своих.
А вот все остальные его используют потому что им позволили (лицензия и тд).
Но эти остальные не слишком интересуют создателей.

Вот если бы в великой и могучей создали ЯП, который использовался бы во всем мире, то там бы в стандартной либе был бы ГОСТ, Магма, Кузнечик и тд
Если бы)))

> Я не совсем понимаю, в каких случаях это используется.

Оно и видно...

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #11 Ответы: #91

78. Сообщение от Аноним (78), 12-Фев-25, 13:55   +14 +/
Авторы Spring Boot, явное лучше неявного!
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #27 Ответы: #188

79. Сообщение от Уникум (?), 12-Фев-25, 13:57   +1 +/
Рынок прочёл, потому что горе-инвесторы повелись на сказки китайцев про модель за $5 млн. Сколько раз уже повторялось: никогда не верьте китайцам на слово
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #61 Ответы: #202

80. Сообщение от Аноним (78), 12-Фев-25, 13:57   +2 +/
Да ничего он не сравнивал, просто тролль
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #21

81. Сообщение от Аноним (78), 12-Фев-25, 13:58   +1 +/
пффф... смешно
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #45

82. Сообщение от Аноним (74), 12-Фев-25, 13:58   +/
Хороший язык во всех отношнениях, и если бы я начилал изучать программирование, я бы выбрал гошечеку. Но я уже старый и на пенсии.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #116, #133, #209

83. Сообщение от Аноним (78), 12-Фев-25, 14:00   –1 +/
Java мертва, да здравствует Kotlin
в остальном на бэке сисярп, бидон и голагне
пыхп практически вымрет как только закончится история с WP в результате очередного их жабогадюкинга
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #31 Ответы: #192, #255

85. Сообщение от Аноним (78), 12-Фев-25, 14:01   –2 +/
а почему не 150? Ох уж эти сказочники (с) падал прошлогодний снег
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #74 Ответы: #182

86. Сообщение от Souryogurt (?), 12-Фев-25, 14:02   +1 +/
В новую директорию нужно также go.sum скопировать. В нем хеши зависимостей записаны, и по ним компилятор определит что они уже есть на компе.

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

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #47 Ответы: #88

87. Сообщение от Аноним (78), 12-Фев-25, 14:04   +/
по удобству выстрелить себе в ногу? просто других удобств в пыхе не было
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #48 Ответы: #105

88. Сообщение от Аноним (42), 12-Фев-25, 14:09   +/
>В новую директорию нужно также go.sum скопировать.

Гениально! А зачем вообще было создавать отдельный каталог и помещать туда hello.go, если можно было остаться в том же? Даже перекомпилировать не надо, бинарник-то уже собран!
Это был пример для гарантированного воспроизведения!

Для недалеких: в реальности вместо hello.go может быть другая прога, хотя и включающая те же зависимости (+ другие тоже уже скачанные), но для которой нет готовых go.mod|sum.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #86 Ответы: #107

90. Сообщение от Аноним (90), 12-Фев-25, 14:10   +/
Из контекста ясно, что имеется в виду скорость/производительность программ. А смотреть "кучу метрик" и т.д. нужно, когда выполняется соответствующее сравнение. В интернете есть немало тестов сравнения производительности на С/С++ и Go. Если их грубо обобщить, то производительность программы на Go в среднем в 2-4 раза медленнее по сравнению с С/С++ при сопоставимом потреблении памяти
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #8 Ответы: #117

91. Сообщение от ijuij (?), 12-Фев-25, 14:11   +/
> Вот если бы в великой и могучей создали ЯП...

А ты из США пишешь?

> Оно и видно...

Если ты такой великий эксперт, то где же ты сам это применяешь?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #76 Ответы: #100

95. Сообщение от Анон1110м (?), 12-Фев-25, 14:18   +1 +/
Многим ЯваСцэнаристам нравится. Типа быстрый, типа простой, комплириуемый, модный стильный, не замшелый C++ или Pascal поэтому можно делать сайты и пацаны не засмеют.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #6

96. Сообщение от Аноним (96), 12-Фев-25, 14:19   +/
а зачем?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #24 Ответы: #146, #189

99. Сообщение от Аноним (96), 12-Фев-25, 14:22   +/
ещё 15 лет будешь "посмотрим"?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #66 Ответы: #113

100. Сообщение от Аноним (-), 12-Фев-25, 14:24   –1 +/
> А ты из США пишешь?

Да. В сша много людей, которые знают русския язык. Он конечно забывается, поэтому многие фразы звучат корявенько для нейтивов, но тут некоторые нейтивы иногда так пишут, что даже мне больно смотреть. Хотя уже почти 30+ лет прошло.

> Если ты такой великий эксперт, то где же ты сам это применяешь?

Напр. для того же TLS. Лично для моего кода нет требования FIPS 140-3 compliance, но для тех, кто работает с госухой или подрядчиком, это вполне реальное требование.


Ответить | Правка | Наверх | Cообщить модератору
Родитель: #91

101. Сообщение от ijuij (?), 12-Фев-25, 14:24   +/

Это я ещё не всех перечислил. ByteDance (TikTok), Kingsoft, NetEase, 360 Security Technology...

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #52 Ответы: #103

103. Сообщение от Аноним (273), 12-Фев-25, 14:37   +/
>ByteDance (TikTok)

Похоже, единтсвенная не нишевая компания.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #101 Ответы: #110

104. Сообщение от похнапоха. (?), 12-Фев-25, 14:38   +/
Это просто именование пакета, а не привязка к Гитхабу. Более того если уже назвали пакет github.com\packagename то можно использовать директиву replace для указания пути к пакету.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #63 Ответы: #111

105. Сообщение от Аноним (273), 12-Фев-25, 14:44   +/
А какие удобства в go - interface {}?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #87 Ответы: #220

106. Сообщение от funny.falcon (?), 12-Фев-25, 14:46   –1 +/
Простите, но моё личное мнение: ООП в Golang есть. Ибо в "привычном ООП" главное - это полиморфизм и инкапсуляция. А и то, и другое в Go нативно: методы + интерфейсы.

(Почему "привычное ООП" в кавычках? Потому что автор термина считал, что объекты должны "обмениваться сообщениями", а не "вызывать методы". И в этом смысле, истинным воплощением ООП являются процессы в Erlang/Elixir.)

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #33 Ответы: #109, #186

107. Сообщение от Аноним (273), 12-Фев-25, 14:47   +1 +/
>Для недалеких: в реальности вместо hello.go может быть другая прога, хотя и включающая те же зависимости (+ другие тоже уже скачанные), но для которой нет готовых go.mod|sum.

А откуда go узнает, какие вам версии нужны? Может вам сейчас нужна версия 2, а скачана - 1.5?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #88 Ответы: #135

108. Сообщение от funny.falcon (?), 12-Фев-25, 14:51   +/
А по поводу "PHP - это CGI", так умельцы давно освоили Event Loop и "в ус не дуют". И действительно у многих получается очень шустро делать какие-то не слишком сложные асинхронные вещи.

Если посмотреть на результаты TechEmpower, то PHP действительно очень близко к Go.

Вот только TechEmpower - это всё-таки синтетика с простыми кейсами, в которых кода не очень много. Тормоза начнутся, когда бизнес-логика разрастётся.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #33

109. Сообщение от Аноним (273), 12-Фев-25, 14:53   –1 +/
>Простите, но моё личное мнение: ООП в Golang есть.

Давайте не придумывать каждый свою терминологию
>А и то, и другое в Go нативно: методы + интерфейсы

И как интерфейсы реализуют инкапсуляцию? Интерфейсы и в C# есть, и почти для той же цели, но инкапсуляция там реализуется инчае
>Ибо в "привычном ООП" главное - это полиморфизм и инкапсуляция

Эм, тогда и в ФП есть ООП, что звучит как абсурд

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #106 Ответы: #158

110. Сообщение от ijuij (?), 12-Фев-25, 15:07   +1 +/
Нет, это лишь свидетельствует о том, что вас интересует в основном только TikTok, и вы проводите в нём много времени.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #103 Ответы: #112

111. Сообщение от Аноним (273), 12-Фев-25, 15:08   +/
>Это просто именование пакета, а не привязка к Гитхабу

Допустим, я переведу проект с github на gitlab. Это что, теперь по каждому гошному файлу нужно будет ходить и домены менять?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #104 Ответы: #119

112. Сообщение от Аноним (273), 12-Фев-25, 15:14   +/
Я в нём время вообще не провожу, недавно просто говорили о его запрете в США, вот и услышал про ByteDance. Вот есть такая компания, как Jane Street. Узнал я о ней, когда изучал Ocaml. Вот меня и интересует, о каких китайских компаниях можно узнать, просто используя их продукты. Или единственное, что у них есть, это записи на фондовом рынке.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #110 Ответы: #256

113. Сообщение от Аноним (113), 12-Фев-25, 15:15   –1 +/
Сколько бог даст. Исходный код должен работать, собираться, а не валятся как готовый бинарник. Имея один файл исходника, можно собрать бинарники под множество архитектур. Это очень круто.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #99 Ответы: #120

114. Сообщение от нейм (?), 12-Фев-25, 15:16   +/
пользуйся стандартной либой, делов то
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #47 Ответы: #143

116. Сообщение от Аноним (273), 12-Фев-25, 15:18   +1 +/
Ужасный язык, так как отметает любой прогресс в области разработки языков. Добро пожаловать в восьмидесятые, снова, хотя уже в восьмидесятых были варианты гораздо лучше, типа StandardML
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #82 Ответы: #118

117. Сообщение от Аноним (117), 12-Фев-25, 15:18   +/
Программа на пыхе ест один гиг на го сто мегов. Дальше продолжать или сам догадаешься?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #90 Ответы: #126

118. Сообщение от Аноним (117), 12-Фев-25, 15:19   +4 +/
Фичи ради фич и торможения? Но для этого уже есть Раст.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #116 Ответы: #121, #124

119. Сообщение от похнапоха. (?), 12-Фев-25, 15:19   +/
Достаточно снова сделать replace с помощью go mod edit, в файле go.mod будет выглядеть как указано в документацию:

Example:

replace golang.org/x/net v1.2.3 => example.com/fork/net v1.4.5

replace (
    golang.org/x/net v1.2.3 => example.com/fork/net v1.4.5
    golang.org/x/net => example.com/fork/net v1.4.5
    golang.org/x/net v1.2.3 => ./fork/net
    golang.org/x/net => ./fork/net
)

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #111 Ответы: #128

120. Сообщение от Аноним (273), 12-Фев-25, 15:22   +1 +/
Обратная совместимость не имеет никакого отношения к тому, насколько новый компилятор нужен для самосборки
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #113

121. Сообщение от Аноним (273), 12-Фев-25, 15:23   +/
>Фичи ради фич

Вам нравится получать NPE? Хотя стоп, у вас же исключений нет, только паника
>и торможения?

Ocaml сопоставим по скорости сборки с go.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #118 Ответы: #222

123. Сообщение от OpenEcho (?), 12-Фев-25, 15:25   +2 +/
История анонимного "специалиста" забаненного в гугле?

>  https://pastebin.com/96uYkp4P

Это не простой "hello.go"

Простой ниже
```
package main
func main() {
  println("Привет")
}

```

> создаём новый каталог, в который помещаем только hello.go, и пробуем его собрать.

Уже очень давно, перед сборкой полезно сделать сперва

    go mod init Shedevr && go mod tidy

которые сами найдут если что в кэше

опционально для оффлайна: go mod vendor


но если ты в каждой новой папке пытаешься опять делать go mod vendor то ты ССЗБ, т.к. это то самое, - чтоб "не из кэша"


> fatal: unable to access 'https://github.com/mattn/go-runewidth/': Could not resolve host: github.com
> fatal: unable to access 'https://github.com/nsf/termbox-go/': Could not resolve host: github.com

Это типа новый прикол?

Т.е. сперва подключаешь зависимости из интернетa, сам, руками, а потом опс? Гениально !!!
Ничего что там https://github.com поставил в зависимости?


> А go mod vendor выдаёт:

Если ты тащишь зависимости, сам, с интернета, то go mod vendor надо делать перед тем как интернет отключить, а потом хоть в бункере компиль, так же как и со всеми другими ЯП. И еще, ознакомся как можно очень просто скаченные зависимости (чужие, т.е. не свои) превратить в локальные, отвязанные полностью от интернета (подсказка: go.mod).


> Что за дейбилизм?

Действительно !

> зависимости-то уже скачаны и в кэше!

Гнать - не надо, если зависимости скачанны и имееют ту же самую версию, повторно ничего не скачивается если версии и хэши сходятся в go.mod & go.sum

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #47 Ответы: #150

124. Сообщение от Аноним (273), 12-Фев-25, 15:30   +/
>Но для этого уже есть Раст.

За тормозами - в haskell. На расте сборка проекта может быть быстрой.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #118 Ответы: #138, #153

125. Сообщение от Аноним (17), 12-Фев-25, 15:30   –1 +/
Если под "коммерческой разработкой" понимать стартап, написанный пабыринькому с целью спихнуть инвестору прототип, похожий на работающий, то да, жабаскрипт для этого как годится.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #49 Ответы: #193

126. Сообщение от Аноним (90), 12-Фев-25, 15:31   +/
Во-первых речь шла о сравнении НЕ с пыхой, во-вторых можно считать память для с/с++ и go одинаковой. Еще раз перечитай пост, на который ты отвечал
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #117

128. Сообщение от Аноним (273), 12-Фев-25, 15:40   +/
Хорошо. А как это с пакетным менеджером объеденить? Ведь всё в GOPATH должно лежать.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #119 Ответы: #130, #131

129. Сообщение от OpenEcho (?), 12-Фев-25, 15:53   +/
В новостях забыли про вкусную фичу: Config.EncryptedClientHelloKeys
которая будет делать  Encrypted Client Hello (ECH) in TLS делая ХТТПС наконец то полностью шифрованным
Ответить | Правка | Наверх | Cообщить модератору

130. Сообщение от похнапоха. (?), 12-Фев-25, 15:55   +/
Replace с помощью go mod edit - это и есть операция "пакентного менеджера". Сейчас не привязано к GOPATH, кешированные пакеты лежат в GOMODCACHE, более того с replace можно указать что github.com/packagename лежит в /home/username/packagename.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #128 Ответы: #132

131. Сообщение от Аноним (273), 12-Фев-25, 15:57   +/
И получается, что если будет указаны локальные зависимости, то это уйдёт в репозиторий для всех?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #128

132. Сообщение от Аноним (273), 12-Фев-25, 15:59   +/
>кешированные пакеты лежат в GOMODCACHE

Туда можно свои пакеты добавлять?
>более того с replace можно указать что github.com/packagename лежит в /home/username/packagename

Как я понимаю, это попадёт в git и уйдёт ко всем

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #130 Ответы: #148, #149

133. Сообщение от Анонем (?), 12-Фев-25, 16:09   +/
Изучать программирование никогда не поздно. И начинать лучше не с Go.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #82 Ответы: #160, #223

135. Сообщение от Аноним (42), 12-Фев-25, 16:32   –2 +/
Думаете, только благодаря подключенной сети каким-то образом определяются нужные мне версии? Нет, конечно. Для сторонних наблюдателей небольшой ликбез: гляньте исходник hello.go. Видите, там при импорте с гитхаба не нужно указывать версии? А при создании новой программы на go никаких go.mod|sum для нее изначально нет. Эти файлы с версиями при сборке go автоматически сгенерирует, вручную версии зависимостей указывать не надо. То есть тот же самый алгоритм генерации можно натравить на кэш, но go вместо этого принудительно ломится в сеть. А если гоферов станет гораздо больше, то это еще будет и бессмысленный DDoS ресурсов, с которых импортируются зависимости. Представьте, что при компиляции новой сишной проги через gcc у вас запускается apt-get update, чтобы проверить libxml в репах, хотя этот libxml уже есть в кэше пакетов и установлен.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #107 Ответы: #140, #288

136. Сообщение от Аноним (49), 12-Фев-25, 16:43   +/
То ли дело mit-scheme. Чтобы 12.1, нужна mit-scheme 12.1
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #66 Ответы: #142

138. Сообщение от Аноним (-), 12-Фев-25, 16:54   –1 +/
>На расте сборка проекта может быть быстрой.

Если бы ты собирал проекты на чистом Си, ты бы знал по настоящему, что такое быстро. На самом деле ни C++, ни Rust не быстрые.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #124 Ответы: #147

139. Сообщение от _kp (ok), 12-Фев-25, 16:56   +2 +/
>>Индия (известна своими IT-услугами и аутсорсингом) и Китай..

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

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #38 Ответы: #141

140. Сообщение от Аноним (273), 12-Фев-25, 16:58   +1 +/
>А при создании новой программы на go никаких go.mod|sum для нее изначально нет.

В таком случае, можно поздравить гопников с их интуитивно понятным пакетным менеджером, который решительно непонятен
>Видите, там при импорте с гитхаба не нужно указывать версии? А при создании новой программы на go никаких go.mod|sum для нее изначально нет. Эти файлы с версиями при сборке go автоматически сгенерирует, вручную версии зависимостей указывать не надо

Это абсурд. Если есть несовместимые между собой 1.5 и 2, то go никак не догадается, какой из них брать. Конечно, можно попробовать взять последнюю выпущенную, но это будет ломаться на каждой обратно несовместимой библиотеке
>То есть тот же самый алгоритм генерации можно натравить на кэш, но go вместо этого принудительно ломится в сеть

Такого алгоритма в принципе не должно быть. Поскольку вначале должна ставится какая-то конкретная версия, и потом она должна замораживаться. Условно >= 1.5, но не 2.
>хотя этот libxml уже есть в кэше пакетов и установлен

А каким образом go должен догадываться, какую версию брать? Может у вас старая версия лежит, которую не обновить из-за техдолга в одном из проектов? Так что теперь, новый проект тоже должен быть на старой версии? Или наоборот, вы попробовали ночную сборку, а теперь хотите рабочий проект на стабильной сделать.

Сборка проекта и установка зависимостей может быть в одном шаге только в том случае, если точно известно, какая версия. Условно как в stack у хаскеля. Хотя тут хаскель скорее отрицательный пример, поскольку если я не хочу компилировать библиотеки самостоятельно, а взять из бинарного репозитория, то хаскель успеет выкачать часть кода самостоятельно, замусорив мне диск.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #135 Ответы: #216

141. Сообщение от ijuij (?), 12-Фев-25, 17:00   +/
Их г..код пользуется большим спросом, в отличие от ...😏

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #139 Ответы: #144, #169

142. Сообщение от Аноним (273), 12-Фев-25, 17:00   +/
И как из этой петли выходить?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #136 Ответы: #211

143. Сообщение от Аноним (42), 12-Фев-25, 17:03   +/
Делов-то больше прибавится, ведь тогда придется велосипедить. Это не наш метод!
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #114 Ответы: #213

144. Сообщение от Аноним (273), 12-Фев-25, 17:05   +1 +/
Их г..код видно за километр. А вот кто написал условный nginx - нет. По этому, до тех пор, пока мне не скажут, чей код написан русскими, а чей французами, а чей - не теми и не другими, я этого не угадаю.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #141

146. Сообщение от Аноним (146), 12-Фев-25, 17:09   +2 +/
А зачем потом бороться с невнятными сообщениями об ошибках?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #96

147. Сообщение от Аноним (273), 12-Фев-25, 17:17   +1 +/
>Если бы ты собирал проекты на чистом Си, ты бы знал по настоящему, что такое быстро

Си и скорость? Не смешите меня.
https://www.opennet.me/opennews/art.shtml?num=56449 Опубликован набор патчей, ускоряющих сборку ядра Linux на 50-80%
Для сравнения, в ocaml завезли модули. И там не нужно на каждый include километры исходников гонять. А потом наступает второй файл, и там опять include
>На самом деле ни C++, ни Rust не быстрые.

Я собирал вот это https://crates.io/crates/gluon/0.18.2/dependencies. С учётом того, что всё - и зависимости и сам проект скачивались и собирались с нуля, то собралось быстро.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #138

148. Сообщение от похнапоха. (?), 12-Фев-25, 17:17   +/
А почему нет? Можно добавлять что угодно, локальные модули на локальной ФС, если это не будет доступно публично. Если это будет публично, то и модули должны быть доступны публично. Это актуально для всех языков, где есть зависимости.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #132

149. Сообщение от похнапоха. (?), 12-Фев-25, 17:18   +/
Тогда делай остальные модули публичными, в чем проблема? А не хочешь - собирый бинарник и распространяй.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #132 Ответы: #151

150. Сообщение от Аноним (42), 12-Фев-25, 17:19   +/
>Это не простой "hello.go"

Тоже предлагаете ограничиться только стандартной библиотекой? См. комментарий выше.

>Уже очень давно, перед сборкой полезно сделать сперва

Как вы сделате это для еще не начатой программы? Мне нужно было телепортироваться в будущее на дачу, чтобы заранее сгенерировать go.mod|sum?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #123 Ответы: #212

151. Сообщение от Аноним (273), 12-Фев-25, 17:30   +/
Я хочу получить поведение, идентичное ocaml. Есть $OCAMLPATH где перечислены пути к файлам, которые ищет компилятор. Это позволяет скачать зависимости, положить их на диск, а потом при сборке проекта их указать. Исходный код проекта не меняется, как бы я эти файлы ни брал, хоть в виде архива, хоть через пакетный менеджер окамла.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #149 Ответы: #166

153. Сообщение от Аноним (146), 12-Фев-25, 17:41   –1 +/
Зато сборка самого rustc не быстрая.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #124 Ответы: #157

154. Сообщение от bdrbt (ok), 12-Фев-25, 17:43   +1 +/
> Плохо, что go-программму уже невозможно скомпилировать без подключённого интернета.

Документацию читать надо, да.

> Как воспроизвести:

GO111MODULE=off - не воспроизводится.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #47 Ответы: #165

157. Сообщение от Аноним (273), 12-Фев-25, 18:02   +1 +/
Не меряйте по его сборке всё остальное. Особенно с учётом того, что llvm тоже не мгновенно собирается
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #153

158. Сообщение от Аноним (158), 12-Фев-25, 18:17   –1 +/
Так никто и не придумывает, их два: изначальное (от автора Smalltalk) и "плюсовое" (хотя оно родом из Simula).

В ФП с полноценными замыканиями есть ООП, да. Я в проекте, где в Typescript по религиозным причинам не использовали классы, писал полноценный SOLID код - вообще без проблем, просто немного многословнее.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #109 Ответы: #173

160. Сообщение от Аноним (160), 12-Фев-25, 18:23   +/
> Изучать программирование никогда не поздно.

Ага, скажешь это, когда перевалит за 60. Посмотрю я как ты будешь зазубривать неделями то, что 18 летние схватывают за 5 минут просмотра на ютубе.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #133 Ответы: #179

161. Сообщение от _ (??), 12-Фев-25, 18:28   +/
Трепло! 🙂
А по факту все ужасы которые ты описал к Си препропу относятся 🙂 … но даже с ними живут как то.

PS: Я даже против generics был, а вот уж _текстового_ препрокссора в Go - точно не нада!

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #62

162. Сообщение от _ (??), 12-Фев-25, 18:33   +/
Да можно и в гамаке, не снимая лыж, стоя на голове …
Но зойчеееем?!?!?!
Я наверное не знаю толка вЪ(с) 😉
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #35

163. Сообщение от 12yoexpert (ok), 12-Фев-25, 18:59   +/
это ЦА golang, для неё это нормально
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #26

164. Сообщение от голос_из_леса (ok), 12-Фев-25, 19:03   +1 +/
PHP уже переусложнен в несколько раз от необходимого. Этакие потоги обогнать C++ по нечитаемости и неочевидности. И да, развесистое ООП только помогает все запутать.

Питон кстати туда же катится со своим морем фич.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #25 Ответы: #273

165. Сообщение от Аноним (42), 12-Фев-25, 19:08   –2 +/
>GO111MODULE=off - не воспроизводится.

Да ну?

$ GO111MODULE=off go build -v hello.go

hello.go:8:8: cannot find package "github.com/mattn/go-runewidth" in any of:
    /usr/lib/go/src/github.com/mattn/go-runewidth (from $GOROOT)
    /media/temp/go/src/github.com/mattn/go-runewidth (from $GOPATH)
hello.go:7:8: cannot find package "github.com/nsf/termbox-go" in any of:
    /usr/lib/go/src/github.com/nsf/termbox-go (from $GOROOT)
    /media/temp/go/src/github.com/nsf/termbox-go (from $GOPATH)

С тех пор, как в go принудительно включили модули по умолчанию, то $GOPATH пустует, или там хранятся завалы легаси. Кэш теперь в другом месте. Тут даже включенная сеть не поможет.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #154 Ответы: #167

166. Сообщение от голос_из_леса (ok), 12-Фев-25, 19:18   +2 +/
>> Я хочу получить поведение, идентичное ocaml.

Хотеть не вредно.

Беда GO в том, что к нему предъявляют претензии адепты из других языков. Кому-то ООП из джавы подавай, кому-то структуры из питона, кому-то сборку "поведение, идентичное ocaml".

GO имеет довольно стройную систему и как язык и как среда. Но лодыри хотят использовать прошлый опыт и не учить новое.

PS
Кстати у противостояния Rust vs C++ те же корни. Поэтому во многих конторах GO и Rust идут вместе, наверно ментальная среда общая. ))

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #151 Ответы: #175

167. Сообщение от bdrbt (ok), 12-Фев-25, 19:24   +1 +/
> Да ну?

Ну да

> $ GO111MODULE=off go build -v hello.go
>  /media/temp/go/src/github.com/mattn/go-runewidth (from $GOPATH)

У тебя GOPATH пустой

> С тех пор, как в go принудительно включили модули по умолчанию, то
> $GOPATH пустует, или там хранятся завалы легаси. Кэш теперь в другом
> месте. Тут даже включенная сеть не поможет.

Нет

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #165 Ответы: #170

168. Сообщение от Имя1 (?), 12-Фев-25, 19:52   +1 +/
С map[P]struct{} они конечно многим свинью подложили(
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #203, #225, #267

169. Сообщение от Аноним (172), 12-Фев-25, 19:57   +1 +/
Когда я работал в московском отделении американской конторы AlignTech, там любимое занятие всего отдела было - переписывать код, запушеный индусами. Когда в москву приехала большая начальница из Техаса и её спросили нафига нужны эти говнокодящие индусы, она сказала, что они нужны, что бы их уволить когда бизнес замедлится, потому что они - дешёвые контрактники, которых не жалко. При этом знающие люди сказали, что в Индии безусловно есть хорошие программисты, но они очень дорогие и их мало, поэтому нет смысла их там покупать.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #141

170. Сообщение от Аноним (42), 12-Фев-25, 19:59   –1 +/
>У тебя GOPATH пустой

Спасибо, кэп. Про прибитость современных версий go к модулям повторяться не стану. Вылазь уже из криокамеры.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #167 Ответы: #176

171. Сообщение от Илья (??), 12-Фев-25, 20:00   +/
> Голанг сейчас основной язык веб бэкэнда в коммерческой разработке.

c# смотрит на тебя с непониманием

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #29 Ответы: #183, #228

172. Сообщение от Аноним (172), 12-Фев-25, 20:02   –1 +/
>  считать выхлоп цена/качество, то Россия будет далеко впереди США.

Изобретения покажи. Что там вышло из РФ, чем весь мир пользуется? Винда, линукс, чатгпт, фотошоп, хром, гуглопоиск, гуглокарты - что? Про цену-качество можно знакомым рассказывать, что б помассировать эго, но это бестолково.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #61 Ответы: #248

173. Сообщение от Аноним (273), 12-Фев-25, 20:11   +/
>Так никто и не придумывает, их два: изначальное (от автора Smalltalk)

А об этом кроме автора Smalltalk кто-то знает?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #158 Ответы: #187

174. Сообщение от Аноним (273), 12-Фев-25, 20:12   +/
Только вот беда, им пользуются
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #69

175. Сообщение от Аноним (273), 12-Фев-25, 20:26   –2 +/
>Беда GO в том, что к нему предъявляют претензии адепты из других языков

Хорошо, как решить данную задачу, когда зависимости ставятся онлайн, а проект потом пишется оффлайн? Никак? Собирать по кусочкам из других проектов?
>Кому-то ООП из джавы подавай, кому-то структуры из питона, кому-то сборку "поведение, идентичное ocaml".

Go выглядит как обрубленный язык из восьмидесятых. У него нет ничего уникального или выдающегося. И когда у людей появляются необычные потребности, то ничего он им дать не может
>GO имеет довольно стройную систему и как язык и как среда

Go абсолютно не гибкий, но почему-то это преподносится как фича.

ЗЫ Оказывается, в Go можно сделать нечто подобное, поскольку GOPATH оказывается может принимать несколько путей https://nixos.org/manual/nixpkgs/stable/#sec-language-go Хотя всё равно не понятно, почему я не вижу пометки пакетов для go в nixos, как это есть для ocaml. Так что проблема ТС решена - и поставить зависимости для go через nix всё же можно. Но я не проверял, насколько хорошо это работает.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #166 Ответы: #214

176. Сообщение от Аноним (273), 12-Фев-25, 20:27   +/
Посмотри https://nixos.org/manual/nixpkgs/stable/#sec-language-go , может из go и можно получить подобие нормального языка
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #170 Ответы: #218

177. Сообщение от Прохожий (??), 12-Фев-25, 20:31   +2 +/
Шта? Да он Rust и в подмётки не годится.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #51 Ответы: #221

178. Сообщение от Прохожий (??), 12-Фев-25, 20:41   +/
Я просто оставлю это здесь: https://fasterthanli.me/articles/lies-we-tell-ourselves-to-k...

Краткие выводы из статьи, сделанные с помощью ChatGPT:

В статье автор подробно рассматривает несколько ключевых технических недостатков языка Go, из-за которых, по его мнению, он не подходит для серьезных производственных систем.

Основные недостатки Go по версии автора:

1. Отсутствие дженериков в течение долгого времени

Автор указывает, что отсутствие дженериков (до их добавления в Go 1.18) приводило к необходимости писать повторяющийся код или использовать неэффективные обобщенные структуры данных (например, interface{}), что снижало производительность и безопасность.

2. Ошибка обработки ошибок через if err != nil

В Go ошибки обрабатываются вручную с помощью множества проверок if err != nil, что засоряет код и увеличивает вероятность пропуска ошибок.
В отличие от языков с конструкциями try/catch или Result/Option (как в Rust), в Go нет механизма, который вынуждает программиста учитывать возможные ошибки на уровне типов.


3. Слабая система управления зависимостями

Go изначально использовал GOPATH, что было неудобно.
Даже с появлением Go Modules, автор считает систему неудобной и несовершенной по сравнению с менеджерами зависимостей других языков (например, Cargo в Rust).

4. Бедная система типов

Автор указывает, что отсутствие иммутабельности, сложность работы с nil-указателями и слабая выразительность системы типов приводят к ошибкам, которые можно было бы избежать в языках с более строгой типизацией.

5. Отсутствие возможностей для абстракции

В Go нет традиционных механизмов ООП (наследования, перегрузки методов и т. д.), что заставляет писать много шаблонного кода.
Интерфейсы Go хоть и простые, но недостаточно мощные для создания гибких архитектур.

6. Garbage Collector (GC) вместо ручного управления памятью

Хотя GC упрощает управление памятью, он может стать проблемой для высоконагруженных приложений.
В языках вроде Rust управление памятью производится без GC, что даёт лучшие характеристики по производительности и предсказуемости работы.

7. Стандартная библиотека и культура «ручного» кодирования

В отличие от Python или Rust, в Go не так много удобных встроенных решений (например, нет из коробки хорошего JSON сериализатора).
Разработчики Go часто гордятся тем, что «код пишется вручную», но это приводит к большему количеству ошибок и дублирования кода.

Вывод автора

Он считает, что многие оправдывают использование Go мифами о его «простоте», но на практике язык создаёт больше проблем, чем решает. По его мнению, если нужен производительный и безопасный язык, стоит рассмотреть альтернативы вроде Rust.

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #201

179. Сообщение от Аноним (180), 12-Фев-25, 21:14   +/
В 60 лет можно освоить чат гпт и программировать лучше 18 летних, которые видео длиннее 15 секунд смотреть не могут.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #160 Ответы: #184, #185

180. Сообщение от Аноним (180), 12-Фев-25, 21:15   +/
кузнечик.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #28

182. Сообщение от Аноним (182), 12-Фев-25, 22:35   +/
> а почему не 150?

Потому что прошло только 15.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #85

183. Сообщение от Аноним (182), 12-Фев-25, 22:37   –1 +/
ООП в 99% случаев ненужно. А то что классы пихают везде и всюду лишь говорит о слабоумии разработчиков. По крайней мере никто не смог мне ещё обосновать необходимость ООП, в большинстве проектов.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #171 Ответы: #194

184. Сообщение от Аноним (182), 12-Фев-25, 22:39   +/
С чатгпт ты напрограммируешь только хеллоуврот на 100 строк максимум. Оно не съест контекст из 100500 зависимостей на тысячи строк.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #179

185. Сообщение от Аноним (182), 12-Фев-25, 22:40   +/
> видео длиннее 15 секунд смотреть не могут

Не не могут, а не хотят. Для того чтобы понять что видео полное Г достаточно 10 секунд. Они не хотят тратить время на ненужное.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #179

186. Сообщение от _ (??), 12-Фев-25, 22:42   +/
>Простите, но моё личное мнение: ООП в Golang есть.

Да фиг ли там мелочиться - такой ООП и в Си есть!
Кто не верит - смотрите Gnome-ячий GObject ... "закат солнца вручную" (С)

Только вот нравится такое ООП "не только лишь всем"(С) :)
Иногда возникает мысль - вот это _надо_ писать на С++ или даже Java, а не на ... 8-)

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #106 Ответы: #230

187. Сообщение от _ (??), 12-Фев-25, 22:45   +/
Ну байка популярная, да и термин ООП - придумал он, имеет право настаивать на своей трактовке ...
Только толку то? Если бы труп страуса к этому прислушался бы ... но имеем С++ за грехи наши :)
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #173

188. Сообщение от Авторы Spring Boot (?), 12-Фев-25, 22:48   +3 +/
Спасибо, учтём!
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #78 Ответы: #231

189. Сообщение от Аноним (189), 12-Фев-25, 22:48   +/
А зачем препроцессором? Левой утилитой про семантику кода ничего не знающей. Когда код меняется инструментами языка, кроме ожидаемого семантически корректного поведения и нормальных сообщений об ошибках, это позволяет, например, ограничивать область действия условной компиляции естественным блоком языка, а это позволяет заменить условную компиляцию на runtime проверку одной строкой, а не переделкой #if/#endif на if {} со сдвигом всех строк.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #96

190. Сообщение от Аноним (189), 12-Фев-25, 22:49   +/
> существенно медленнее крестов, и всего в 2 раза быстрее интерпретируемого php

php давно jit

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #6

191. Сообщение от _ (??), 12-Фев-25, 22:57   +/
Не надо завидывать что Го-шники вставляют! ;)

Все модно-молодёжные новые проекты лежат на 'microservice architecture', а там Java как то толком не смогла... почему - не знаю. Хороших причин к этому нет. Но - вотЪ :-\
А вот к примеру пистоны, Го, JS+Node - только так ...

PS: Может они пока JVM Code Cache разогревают, а потом всех нагн^W обгонят ? ;)

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #50 Ответы: #284

192. Сообщение от _ (??), 12-Фев-25, 22:59   +1 +/
>Java мертва

Возможно и так. Но вот Kotlin точно _не_ жив :)
Скорее уж "да здравствует" JS+Node... хотя глядя на _это_ уже думаю что жаба ещё ничего была - то :)))

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #83

193. Сообщение от _ (??), 12-Фев-25, 23:00   +1 +/
Да если бы так :( Оно уже везде.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #125

194. Сообщение от _ (??), 12-Фев-25, 23:03   +/
Я бы согласился если бы ты сказал "ООП как в С++ - в 99% случаев ненужно" :)
А так то - фундаментальная же вещь для усмирения complexity ...
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #183

195. Сообщение от Аноним (189), 12-Фев-25, 23:03   +/
> Perlbal до nginx и имел сравнимую производительность

Да каэш. Никогда даже близко не стоял, и это даже при том что асинхронные вещи, казалось бы, совсем не важно на чём писать, потому что код там вычислениями не занимается, а только редко дёргает AIO.

> Не говоря о том, что питон и руби буквально срисованы с перла

Ты ни питона, ни ruby видимо в жизни не видел, с скорее всего и перла.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #29

196. Сообщение от _ (??), 12-Фев-25, 23:07   +/
Писать на сисярпе под линуксы - сильно душно :(
К примеру наши программеры после полугодового тест проекта - спрыгнули...

PS: Программеры - хорошие, хотя и вантузятнеГи ;-)

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #72 Ответы: #229, #268

197. Сообщение от Аноним (197), 12-Фев-25, 23:08   +/
export CLEAN_PROTECT="C2D"
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #44

199. Сообщение от _ (??), 12-Фев-25, 23:13   +/
>В принципе не плохой язык.

Кому - как. Мне - норм :)

>Странно что для него интерфейс для драйверов ядра линукс нет.

Это одно из основных достоинств! И захотят - в ведро не втянут! ;-)

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #9

200. Сообщение от _ (??), 12-Фев-25, 23:17   +/
>Го на сборщике мусора построен, он памяти в рантайме жрёт - яибу.

Меньше жавы жрёт то!
А насчет "ибу" - дык это мужики делают, а ты другая сторона процесса! :)

>Да и как язык довольно убогий.

Убогие увидят в зеркале убогость(С)
_ВСЕ_ мажорные облака на нём сделаны. Это - надолго.

>Никакой производительности Си у него разумеется нет - именно поэтому лучшее решение на го всё равно работает в два раза медленнее, чем на Си и Расте на techempower.

Нас - орда! ... А нас - рать!(С)
:)

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #30 Ответы: #208, #238

201. Сообщение от Имя1 (?), 12-Фев-25, 23:21   +/
"По его мнению, если нужен производительный и безопасный язык, стоит рассмотреть альтернативы вроде Rust"

Ага пока не увидишь этот самый код на Rust

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #178 Ответы: #206, #260

202. Сообщение от _ (??), 12-Фев-25, 23:22   +/
Они её в свободный доступ вообщето выложили :)
Или ты думашь что ты умнее тех кто и в-правду работает на фондовым базаре? :)))

На слово же (если кто забыл) - джентльменам нужно верить ещё меньше чем китайцам. :-\

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #79

203. Сообщение от Аноним (209), 12-Фев-25, 23:30   +/
ммм, няшный Go.)
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #168

206. Сообщение от Прохожий (??), 13-Фев-25, 01:52   +1 +/
Это потому, что его надо подготовленным смотреть - то есть, какую-никакую документацию почитать о семантике языковых абстракций. А если с наскоку, после Питона, Джава скрипта или Си - таки да, ничего не понятно.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #201 Ответы: #207

207. Сообщение от Аноним (209), 13-Фев-25, 02:06   –1 +/
Говорят, вот люди которые в чем то разбираются могут обьяснить простыми терминами так что даже 5 летний ребенок поймет.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #206 Ответы: #210, #243, #244, #245

208. Сообщение от Аноним (208), 13-Фев-25, 02:09   –1 +/
В недрах облаков есть го, но также там c#/dotnet, java, python, c++, rust. Причём, C++ и Раст там как раз потому, что всё остальное неэффективно по ресурсам. А го, питон, жава и дотнет потому, что низкий порог вхождения и любой васян может чё-нить слабать за небольшие деньги.

Рать вас там или не рать - никого не волнует. Речь только про то, что в статье опеннета утверждается про скорость Си, а это не соответствует действительности.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #200 Ответы: #233

209. Сообщение от Аноним (209), 13-Фев-25, 02:10   +/
> Хороший язык во всех отношнениях

Ты хочешь сказать раскрученные всякими unix оидами, финами, ну такое себе skillfactory, и skillbox сами себя не окупят.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #82 Ответы: #224

210. Сообщение от Прохожий (??), 13-Фев-25, 02:34   +/
КНо ведь всё равно надо, чтобы кто-то объяснил, не правда ли?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #207

211. Сообщение от Аноним (49), 13-Фев-25, 03:15   +/
Бинарник качать
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #142 Ответы: #249

212. Сообщение от OpenEcho (?), 13-Фев-25, 03:44   +/
>>Это не простой "hello.go"
> Тоже предлагаете ограничиться только стандартной библиотекой? См. комментарий выше.

Для Hello_World - 100% !

Это-ж надо быть полным извращенцем, чтоб для Хелло подтянуть кучу АБСОЛЮТНО не нужных пакеджей


> Как вы сделате это для еще не начатой программы? Мне нужно было
> телепортироваться в будущее на дачу, чтобы заранее сгенерировать go.mod|sum?

Вы хотите выиграть медаль за лучший тролинг здесь, на опеннете?!

Типа - "Хочу программу, и чтоб самому не писать уже готовое и чтоб оно халявненькое магически прилетело ко мне без интернета... на дачу"

Я уже выше сказал, - как это делается, но если и правда не понятно, то специально для вас, пошагово: https://gist.github.com/gmolveau/f09c1038ca622620e54d0579ba0...


Вместо того чтоб позориться говоря полную ерунду, потратьте время на гыгл. Тем кому надо на даче или в бункере, работают в эиргапе позади собственного go mod proxy ака - "athens" вместо того чтоб кидать подобные заявы


Ответить | Правка | Наверх | Cообщить модератору
Родитель: #150 Ответы: #237, #240

213. Сообщение от OpenEcho (?), 13-Фев-25, 03:56   +/
> Делов-то больше прибавится, ведь тогда придется велосипедить. Это не наш метод!

Тогда надо просто сделать пустой stuff_that_i_cant_live_without.go в котором в импорте прописать всё что хочется впихнуть в зависимости оставив func main(){} пустым, сделать go mod init SuperProject && go mod tidy там где есть интернет и ехать на дачу вбивать все остальное

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #143 Ответы: #217, #239, #242

214. Сообщение от _ (??), 13-Фев-25, 06:29   +1 +/
>Хорошо, как решить данную задачу, когда зависимости ставятся онлайн, а проект потом пишется оффлайн? Никак? Собирать по кусочкам из других проектов?

ШтА?!?!?! 8-о
Ты доку на go mod вообще читал?!?!?
Там подробно разжёвано, для хлебушков ... но на ангельском ;) Что великий програ*изд не осилил ёзыка для програ*издофф? :)

(*) Если ветку читают дети: Дети! Читайте о "go mod vendor" и будет вам ...

>Go выглядит как обрубленный язык из восьмидесятых.

Ты просто не видел языков из 80-х, которые там и застряли... Зажрались вы робяты :)

>У него нет ничего уникального или выдающегося.

И слава всем богам всех религий сразу!!!!!!!!! :-D

>И когда у людей появляются необычные потребности, то ничего он им дать не может

Купите ябблобук и поставьте Node/JS и Rust! Ну или полЫ поменяйте :)
(*) Трищ маЁр - ещё раз, медленно - пол_Ы_! Призывов к непотребству - нет!

>Go абсолютно не гибкий, но почему-то это преподносится как фича.

Хочешь гибкости? Ну возьми JS или сразу лисп... Зачем мучаешь ан*с твЁрдым нефритовым го? :)))

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #175 Ответы: #234

215. Сообщение от Jh (?), 13-Фев-25, 06:42   +/
Зато выучить его проще в 100 раз чем с++
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #6

216. Сообщение от _ (??), 13-Фев-25, 06:43   +/
>>А при создании новой программы на go никаких go.mod|sum для нее изначально нет.
>В таком случае, можно поздравить гопников с их интуитивно понятным пакетным менеджером, который решительно непонятен

В таком случае поздравь себя - ты делаешь выводы вселенского масштаба(С) опираясь на слова недоучек и откровенных тупиц. 8-/

И да в го - можно (и для некоторых проектов даже ___нужно___ !!!) задавать версии модулей.
А если там пусто - действует простая эвристика - качатся будет то, что хозяин модуля указал. Обычно last release ... но можно и наступить :)

Чё вам не так? Автоматически полЫ программистам не меняет? Горюшко то какое :-)

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #140 Ответы: #235

217. Сообщение от _ (??), 13-Фев-25, 06:47   +2 +/
Всё так! Рецепт одного француза с далёкого уже 2021 года :)
Работает до сих пор, но нитакусикам - неподЪёмно ;-)
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #213

218. Сообщение от _ (??), 13-Фев-25, 06:58   +1 +/
Это вряд ли - всё к чему прикасаются nixos-ники неизбежно превращается в оно :(
Карма.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #176 Ответы: #247

219. Сообщение от _ (??), 13-Фев-25, 07:03   +/
... то стандартный net/http сделают такой! что пейсатели веб фрэймворков дружно идут на выход :) (только с версии 1.21.чегото)

Но куму нужен этот http в 2к25-ом то?!?! ;-D

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #70

220. Сообщение от _ (??), 13-Фев-25, 07:04   +/
Ну во первых - это красиво! (С) ;-)
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #105 Ответы: #308

221. Сообщение от _ (??), 13-Фев-25, 07:06   +/
Ничто и никто и никогда не годится в подмётки языку для переписывани!(С)
Мы внимаем - доставляй езчщiо! :)
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #177

222. Сообщение от _ (??), 13-Фев-25, 07:09   +/
>Ocaml

Ты в курсе что оно даже сейчас в 2k25-ом ... как бе это сказать то ... оно - однопоточное! 8-\ Так что иди с Питоном сравнивай, да поторопись там вот-вот GIL устранят :)

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #121 Ответы: #250

223. Сообщение от _ (??), 13-Фев-25, 07:12   +/
>Изучать программирование никогда не поздно. И начинать лучше не с Go.

Наверное да. Есть бэйсик, паскаль, лого и хаскель :)))))

  

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #133

224. Сообщение от _ (??), 13-Фев-25, 07:14   +/
Ведро - официально самый успешный софтвер прожэкт за всю историю человечества!(С)
Нравится тебе это или нет :)
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #209

225. Сообщение от _ (??), 13-Фев-25, 07:15   +/
Вот когда голосовали за generics - ты как проголосовал?! Теперь то чего ... наслаждайтесь :)
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #168 Ответы: #257

226. Сообщение от Аноним (226), 13-Фев-25, 07:20   +/
из всех экспертов в этом треде ни один не написал про go mod download.

А впрочем, чего еще ждать от опенка

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #47 Ответы: #246

228. Сообщение от User (??), 13-Фев-25, 08:08   +/
Да не, c# по тому, что я вижу - про энтерпрайзы со сложной бизнес-логикой, эдакая better java - а go'шечка - простая-и-быстрая (в том числе и в разработке) web'ня. Чего больше - чего меньше вопрос дискуссионный (Впрочем, инсорс-разработки на go в сколько-нибудь заметных масштабах я не то, чтобы "не видел", а и "не слышал" даже - а вот коммерческие коробки с wob'нёй на c# вполне себе...)
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #171

229. Сообщение от User (??), 13-Фев-25, 08:15   –1 +/
В случае с развесистой бизнес-логикой вариантов не так, чтобы разогнаться. У той же go'шечки не то, чтобы "хорошо" с ORM и крупными MVC-фреймворками - а делать каждый раз восход-солнца-вручную то такоэ...
c#, java ну и скрЫптота какая-нибудь там, где нагрузки нет.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #196

230. Сообщение от Аноним (230), 13-Фев-25, 08:30   +/
Вообще-то gobject -- довольно годная объектная система, просто Си - не лучший язык для её использования. Есть vala, который для неё и создавался. К тому же, она легко встраивается в объектные системы других языков.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #186 Ответы: #271

231. Сообщение от Кодогенератор (?), 13-Фев-25, 09:12   +/
То-то же!
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #188 Ответы: #252

232. Сообщение от Аноним (232), 13-Фев-25, 09:21   +2 +/
Go делался для IO-bound задач (типа сервачков), где важна, в первую очередь, способность рантайма языка дёшево обслуживать большой RPS. Go это решает через green threads (горутины) и не блокирующее сетевое взаимодействие (еpoll и т.п.)
Странно писать на языках, имеющих сборку мусора, алгоритм-числодробилку (CPU-bound задачу), а потом рассуждать от том, что такая числодробилка на крестах будет быстрее.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #6

233. Сообщение от Аноним (233), 13-Фев-25, 09:30   +2 +/
> Причём, C++ и Раст там как раз потому, что всё остальное неэффективно по ресурсам.

Не неси чушь. В "недрах облаков" ресурсы упираются в асинхронное IO, а не в скорость пердолинга с байтиками. Именно поэтому там Go и прочее.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #208 Ответы: #236

234. Сообщение от Аноним (273), 13-Фев-25, 10:30   +/
>(*) Если ветку читают дети: Дети! Читайте о "go mod vendor" и будет вам ...

Добро пожаловать в js с его загадками уровня [] + {}, в мануале на 100500 страниц всё описано. У вас же нет других дел, кроме как чтения мануала на каждый чих, принцип наименьшего удивления не изобретён
>Ты просто не видел языков из 80-х, которые там и застряли... Зажрались вы робяты :)

Если сделать современную обвёртку для далеко не самых передовых идей из 80-ых, то не все поймут, что идеи эти устарели уже в 80-ых, то есть лет сорок назад

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #214

235. Сообщение от Аноним (273), 13-Фев-25, 10:35   +/
>и для некоторых проектов даже ___нужно___
>А если там пусто - действует простая эвристика

Это не эвристика, это магия. А магия - это не хорошо, так как сейчас магия работает, а через пять минут перестаёт

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #216 Ответы: #278

236. Сообщение от Аноним (273), 13-Фев-25, 10:38   +/
Полно команий, работающих с высокой нагрузкой, описывавших, чем им помешал гошных сборщик мусора
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #233 Ответы: #294

237. Сообщение от Аноним (42), 13-Фев-25, 10:38   +/
>специально для вас, пошагово

Этот offline_modules.go не поможет, когда его импорты не успел обновить. Ведь без сети можно оказаться не только на даче, но и в результате поломок у провайдера, или внезапной недоступности ресурса, с которого импортируется зависимость. То есть когда зависимости все есть в кэше, но offline_modules.go не успел обновиться, то go опять не соберет программу без сети.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #212

238. Сообщение от Аноним (273), 13-Фев-25, 10:39   +/
>А насчет "ибу" - дык это мужики делают, а ты другая сторона процесса! :)

А как это называется для другой стороны процесса?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #200

239. Сообщение от Аноним (273), 13-Фев-25, 10:54   +/
Альтернативная логика гопников: если в голанге что-то не работает, то процесс нужно выстраивать вокруг того, как это не работает, а не чинить проблему.
>там где есть интернет и ехать на дачу вбивать все остальное

Особенно хорошо будет, если у кого-то есть интернет, но конкретно сейчас его отломали. Или, если у человека внезапно появилось свободное время.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #213 Ответы: #241, #258

240. Сообщение от Аноним (273), 13-Фев-25, 11:29   +/
>уже выше сказал, - как это делается, но если и правда не понятно, то специально для вас, пошагово: https://gist.github.com/gmolveau/f09c1038ca622620e54d0579ba0...

Интересно, что же там есть?
>copy go.mod and go.sum files from the offline PC to the internet PC

Если вы бездомный, то просто купите себе дом. Спасибо
>и чтоб оно халявненькое магически прилетело ко мне без интернета... на дачу

Выше вам уже описали что хотят - достать версию, которая есть в кеше. Когда авторы голанга, движимые NIH зачем-то создавали go, не просто язык, а ещё и изобрели к нему пакетный менеджер, вместо того, чтобы взять существующий нормально работающий. Далее, они наполнили этот пакетный менеджер магией, чтобы он умел скачивать напряму с гитхаба(что он ещё умеет/не умеет?). Но как и полагается велосипеду, этот велосипед умеет далеко не всё
>Тем кому надо на даче или в бункере, работают в эиргапе позади собственного go mod proxy ака - "athens"

Предположим, я захотел посмотреть, что это за go такой. Вы предлагаете мне читать кучу мануалов и ставить себе дополниельные кешы? Вы уверены, что это в каждом самоучителе на первых страницах написано? А если язык мне не понравится, зачем столько усилий прикладывать? В нормальных языках данная проблема решается просто: есть отдельная фаза установки зависимостей и отдельно - сборка проекта. А установка делается через универсальный пакетный менеджер, а не свой собственный велосипед, который почти ничего не умеет. Универсальный пакетный менеджер осваивается, а потом используется для всех языков и систем, а не только для go. И одной из фич этого пакетного менеджера - работа оффлайн, когда он берёт уже скачанные версии и из них формирует рабочее окружение. То есть, даже после отключения интернета, можно взять зависимости от другого проекта, если они есть, в кеше, при чём это будет полностью прозрачно. То есть, если у меня есть проект a зависимый от z, y, и проект b зависимый от y, x, которые совместимы, то я могу полностью оффлайн собрать проект c зависимый от x, z, хотя ни один из проектов не содержит обе эти зависимости одновременно. Более того, я могу даже не просто указать абстрактный y, а даже заморозить его версию. А советы всех гошников здесь - это найдите машину с интернетом. Но если я могу найти машину с интернетом, то и описанной проблемы нет, поскольку проблема в том, что у меня нет машины с интернетом.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #212 Ответы: #262, #263

241. Сообщение от Аноним (273), 13-Фев-25, 11:31   +/
>Альтернативная логика гопников: если в голанге что-то не работает, то процесс нужно выстраивать вокруг того, как это не работает, а не чинить проблему.

Кстати, подсветку синтаксиса там до сих пор не завезли?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #239

242. Сообщение от Аноним (42), 13-Фев-25, 11:34   +/
>в импорте прописать всё что хочется впихнуть в зависимости

То есть все версии кэшированных зависимостей должны быть заранее завендорены пока есть сеть (без сети go mod vendor может не сработать, как показано выше), ведь в оффлайне может понадобиться любая.  Еще и специальная прога дожна быть, которая отслеживает поступление новых версий зависимостей в кэш для последующего завендоривания. Это же бессмысленное дублирование кэша модулей! Проще тогда залезть в исходники самого go, чем городить софт для автовендоринга.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #213 Ответы: #259, #270

243. Сообщение от Аноним (273), 13-Фев-25, 11:45   +/
Давайте, объясните пятилетнему ребёнку, как работает система аффинных типов на примере borrow checker, чтобы он после этого сел и начал писать код. Или то, чем система типов раста и окамла похожа, а чем различается, и что из этого вытекает, пускай он напишет систему типов.

ЗЫ пятилетний ребёнок не поймёт никаких сложных вещей. А если ему начать объяснять, то к тому моменту, когда он их поймёт, ему будет уже намного больше, чем пять лет.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #207

244. Сообщение от Аноним (-), 13-Фев-25, 13:06   +/
> Говорят, вот люди которые в чем то разбираются могут обьяснить простыми терминами так что даже 5 летний ребенок поймет.

Не "говорят", а "говорил". Ричард Фейнман заявлял подобное, и он в общем-то говорил про физику. Причём не про физику в целом (попробуй объяснить пятилетнему ребёнку уравнение Шрёдингера, лол), а про интуитивное, качественное понимание физических процессов. Количественные законы в физике уже требуют матана, и подчастую нетривиального, которого на первом курсе не рассказывают.

Так что не надо делать из заявлений Фейнмана выводов, что если ты не понимаешь чего-то, несмотря ни на какие объяснения, что все вокруг идиоты.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #207

245. Сообщение от Аноним (245), 13-Фев-25, 13:11   +1 +/
Объяснять сложные вещи посредством более простых - это именно то, что делается в С++ (всё через классы). Например, лямбда-функция - это класс, интеллектуальный указатель - это класс, и т.д.
Однако разве это хорошо? Основываясь на ненадёжном фундаменте, вся эта сложная конструкция сложных объектов становится совершенно неустойчивой, и трудно понять почему код не работает в конкретном случае, где в нижележащих классах ты не учёл какую-то мелочь. Заставить классы работать как надо - трудная задача.
Надёжнее было бы сложные вещи сделать встроенными понятиями языка.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #207 Ответы: #299

246. Сообщение от Аноним (42), 13-Фев-25, 13:22   +/
>go mod download

Зависимости уже есть в кэше. См. пункт первый.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #226

247. Сообщение от Аноним (273), 13-Фев-25, 14:00   +/
Они уже почти ко всему прикоснулись, посмотрите на их гиганский репозиторий.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #218

248. Сообщение от Аноним (248), 13-Фев-25, 14:00   +/
OpenCV, Nginx, Kotlin. Ну это так, навскидку
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #172

249. Сообщение от Аноним (273), 13-Фев-25, 14:01   +/
А бинарник откуда берётся? Если я хочу его сам собрать, то мне что, коммит за коммитом собирать?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #211

250. Сообщение от Аноним (273), 13-Фев-25, 14:04   +1 +/
>как бе это сказать то ... оно - однопоточное!

Уже нет. В 5.0 завезли многоядерность, а сейчас уже 5.3
>Так что иди с Питоном сравнивай, да поторопись там вот-вот GIL устранят :)

Обожаю такие соревнования. На них ещё не пришёл, а уже выиграл

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #222 Ответы: #281

251. Сообщение от Аноним (251), 13-Фев-25, 14:06   +1 +/
> Вот гугл можно найти на почти на любом случайном смартфоне. А эти компании - неизвестно где.

Alibaba - это место откуда твой смартфон приехал к посреднику, у которого ты его купил.
Tencent, Baidu - это то, чем пользуются люди, разработавшие и сделавшие твой смартфон.
DeepSeek - это тот, кто будет делать твой следующий смартфон.

А Гугл - это так... мелкая конторка на поиграться конечному пользователю.

Шах и мат.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #67

252. Сообщение от mos87 (ok), 13-Фев-25, 14:06   +/
sdf.sdlfjsd.sdfsdfsdf.asdfsadfsdf.asdfasdfsdgsfasdf
<...>
sdf.sdlfjsd.sdfsdfsdf.asdfsadfsdf.asdfasdfsdgsfasdf

@somecrypticshit
class main void public() {
get set get set ... get set
print('Hello World!');
}


;-) <- сейлсмен JetBrains

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #231

255. Сообщение от mos87 (ok), 13-Фев-25, 14:14   +/
>Java мертва

Согласен. Разработка на всяких Спринг Бутах как сеанс групповой некрофилии (ведической).

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #83

256. Сообщение от Аноним (251), 13-Фев-25, 14:16   +/
> Вот меня и интересует, о каких китайских компаниях можно узнать, просто используя их продукты.

Alibaba - Aliexpress (не, он не только в СНГ популярен, если шо).
Huawei - смартфоны, ноуты, роутеры.
Xiaomi - эти вообще всё вплоть до туалетной бумаги делают.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #112 Ответы: #266

257. Сообщение от Facemaker (?), 13-Фев-25, 14:32   +1 +/
Да нормальный синтаксис, не хуже "угловых скобок". Можно углядеть даже метафору "массива типов" в этих квадратных скобках.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #225

258. Сообщение от OpenEcho (?), 13-Фев-25, 14:36   +/
> Особенно хорошо будет, если у кого-то есть интернет, но конкретно сейчас его
> отломали.

- "Хочу булку из интернета, но интернета у меня нет"

Ребят, у вас с логикой точно все в порядке?


Ответить | Правка | Наверх | Cообщить модератору
Родитель: #239 Ответы: #277

259. Сообщение от OpenEcho (?), 13-Фев-25, 14:41   +/
>Это же бессмысленное дублирование кэша модулей!

Вы сперва язык и его тулкит выучите, а потом критикуйте, а то у вас даже ХелоВорд с зависимостями получился. Нет в Го никаких проблем работы в офлайне, для тех кто банально умеет пользоваться гит-ом и языком и его тулкитом


Ответить | Правка | Наверх | Cообщить модератору
Родитель: #242

260. Сообщение от Facemaker (?), 13-Фев-25, 14:42   –1 +/
>Ага пока не увидишь этот самый код на Rust

Гм, ну я каждый день вижу и создаю этот самый код на Rust. И пока вроде никто не умер. Красивый лаконичный выразительный код.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #201 Ответы: #272

261. Сообщение от Аноним (251), 13-Фев-25, 14:44   +1 +/
> Будучи на даче, обнаружилось, что go build без интернета совсем не работает (выдаёт ошибки подключения к сети)

В 2025 году жаловаться на отсуствие интернета, тем более, когда пишешь на языке, основной уклон которого, этот самый интернет (бекэнды).

Чес слово, странно читать.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #47 Ответы: #264

262. Сообщение от OpenEcho (?), 13-Фев-25, 14:55   +/
> Выше вам уже описали что хотят - достать версию, которая есть в кеше.

Хорош тролить.
Нет проблемы в Го изпользовать то, что уже закэшированно.

Гугл в зубы и вперед, вместо того чтоб телепатировать у кого NIH а у кого нет

>  когда он берёт уже скачанные версии и из них формирует рабочее окружение.

Не, не, не - пусть это чудо без интернета скачает, так же как вы хотите от Го. А то, что вы описали, это точно так, как работает Го и все укладывается в одну команду тулкита, - кэшируется и юзается всеми проектами кому нужнo сторонний пакедж.


> Но если я могу найти машину с интернетом, то и описанной проблемы нет, поскольку проблема в том, что у меня нет машины с интернетом.

Топите дальше, порадовали :)

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #240

263. Сообщение от Аноним (251), 13-Фев-25, 14:57   +/
> Но если я могу найти машину с интернетом, то и описанной проблемы нет, поскольку проблема в том, что у меня нет машины с интернетом.

В следующем треде предлагаю обсудить более реалистичный вариант - машина без клавиатуры (чай пролить реальнее, чем оказаться без сети) и на каком языке можно писать без оной. Если таков будет найден, присвоем ему статус "нормальный" и перейдём к обсуждению остальных маловероятных случаев и костылей для героического исхода.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #240 Ответы: #295

264. Сообщение от Аноним (42), 13-Фев-25, 15:27   +/
>В 2025 году жаловаться на отсуствие интернета

В 2025 году вам запрещают скомпилировать программу без интернета, а в 2035 году вам запретят компилировать программу без отправки sms на специальный корпоративный номер, в 2045 году вам запретят скомпилировать программу без специальной биологической идентификации. И так далее...
А как вам запрет вести разработку на гитхабе без следящего маячка в виде зондосмартфона? Сам go еще активно собирает подробную информацию о вашей системе и готов отправлять ее куда надо https://opennet.ru/58639/. В каком году go-программы перестанут компилироваться без отправки телеметрии? А если гоферов станет гораздо больше, то это еще будет и бессмысленный DDoS ресурсов, с которых импортируются зависимости. Зачем на каждый чих насиловать сеть, если все необходимое есть в кэше? А еще, когда на даче нет городского шума и не отвлекаешься на интернет, то работается лучше.

>бекэнды

Это если речь исключительно о деньгах, а вообще на нем пишут практически все https://github.com/avelino/awesome-go

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #261 Ответы: #269

265. Сообщение от OpenEcho (?), 13-Фев-25, 15:31   +/
> Кто-то может объяснить, зачем голангу более пятиста мегабайт виртуальной памяти даже в
> hello world?

Хорош уже гнать, спецы блин, оно в принципе, больше чем полутора мега максимум не сожрет для хелло

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #48

266. Сообщение от Аноним (273), 13-Фев-25, 16:21   +/
Какое это отношение имеет к софту? У них есть какие-то уникальные разработки? Вот у Яндекса, например, есть ClickHouse, у некоторых работодателей в вакансиях встречается, хотя они - не Яндекс.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #256

267. Сообщение от Аноним (273), 13-Фев-25, 16:24   +1 +/
Для тех, кто не пишет на go, в чём проблема?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #168 Ответы: #296

268. Сообщение от _kp (ok), 13-Фев-25, 16:25   +/
  Обычно не требуется писать только под Линукс, и тем более на С#. А нужно и версию запускаемую в том числе на Линукс. И бюджет на это выделяется небольшой.
  И если с нативной сборкой проблемы, то с ними не возятся, а используют Wine, в котором все отлично работает.
  Тоже относится к ПО состоящему не из одного выполняемого файла, а комплекса ПО и библиотек, что нативно портировать затратно, и достаточно сделать чтоб в Wine работало.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #196 Ответы: #280, #282

269. Сообщение от Аноним (251), 13-Фев-25, 16:32   +1 +/
> В 2025 году вам запрещают скомпилировать программу без интернета

Если у тебя зависимость лежит в интернете, то логично, что ты не можешь скомпилировать без того, чего у тебя нет.
Компилить без интернета тебе никто не запрещает. Более того, предоставлены инструменты на такие случае и они описаны в офф. документации.
В 2025 году интернет - это уже давным-давно не роскошь. Поэтому по дефу сделали более удобное поведение для подавляющего большинства. Нужен модуль - просто импортируешь и при сборке оно само подтягивается. Вместо того, чтобы как обезьянка одно и то же набивать - abstr_pckg_mngr install super_dependency. Компилятор и пакетный менеджер - два в одном... с достаточным функционалом, чтобы отвязаться от сети.

> а в 2035...

И тут Остапа понесло...

> А как вам запрет вести разработку на гитхабе без следящего маячка в виде зондосмартфона?

Для второго этапа авторизации? Так там можно хардварные ключи использовать, а не смартфон.

> А если гоферов станет гораздо больше, то это еще будет и бессмысленный DDoS ресурсов, с которых импортируются зависимости.

Я, конечно, могу ошибаться. Надо проверить, но лень.
Оно видит в коде зависимость, идёт в go.mod, видит версию, идёт в кэш, если у тебя есть модуль нужной версии, то в тырнет никто не идёт. О каком ДДоСе идёт речь? По такой логике тогда и бравзеры - это инструменты для ДДоСа. А сервера просто так должны быть, для красоты. Поставил, настроил и пусть стоит.

> А еще, когда на даче нет городского шума и не отвлекаешься на интернет, то работается лучше.

Я вот дачу за это люблю. И использую её для цифрового детокса. Телефон валяется целый день дома. Проверяю 3 раза в сутки. И то на даче есть интернет. 120 км от города и 50 км от ближайшего райцентра. Если есть задача работать с дачи, то нет никаких проблем организовать там интернет. Хороший модем m2/minipci-e + адаптер на usb + роутер выходит не так дорого. Опционально - направленная 4g антена. Зимой, когда никого нет, скорость 170 Мбит/c, что больше, чем у меня дома. Летом не замерял, но на стримминг в 1080p всегда хватает.

Или ты специально его не делаешь, чтобы не отвлекаться на него? Тут это уже или к психологу, или самоконтроль, или пара правил iptables на роутере...

> Это если речь исключительно о деньгах, а вообще на нем пишут практически все

Ну, и навскидку две трети из этого или непосредственно с сетью работает, или подразумевает использование в сетевом контексте.
Так или иначе сейчас почти всё завязано на сеть. Такие времена.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #264

270. Сообщение от OpenEcho (?), 13-Фев-25, 17:54   +/
> Еще и специальная прога дожна быть

Она уже в Го тулките

> поступление новых версий зависимостей в кэш для последующего завендоривания.

Вендоринг делается только для того чтобы разрабатывать в офлайне, в изолированной директории и ни от кого не зависящей, ни от платформы, ни от архитектуры, ни от текущего состояния кэша и закаченных пакаджей, просто все в одном фолдере, который можно упаковать и передать кому угодно. Вендоринг поможет исключить зависимость от импортированного компонента (на случай если тот решит пропасть) или привязаться к конкретной версии. Вендоринг никак не связан с кэшем, который изпользуется всеми проектами

> Это же бессмысленное дублирование кэша модулей!

И как вы передадите коллеге проект? Со всей вашей билд системой и зависимостями? А в го достаточно сделать вендоринг, запаковать директорию и отдать и пофиг как там усторенно все на другой машине

> Проще тогда залезть в исходники самого go, чем городить софт для автовендоринга.

Еще проще почитать документацию, чем гадать и делать выводы на мнениях опеннета и многие вопросы и догадки отпадут сами

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #242

271. Сообщение от _ (??), 13-Фев-25, 18:29   +/
Ну и как - много наValaли софта то? ;-)
А чего так? Годная же?!

Неееее робяты! Где то нас кидают!(С) :)

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #230 Ответы: #275

272. Сообщение от pavel_simple. (?), 13-Фев-25, 19:13   –2 +/
>>Ага пока не увидишь этот самый код на Rust
> Гм, ну я каждый день вижу и создаю этот самый код на
> Rust. И пока вроде никто не умер. Красивый лаконичный выразительный код.

дай кусок посмотреть, может я даже не умру от кринжа а наиборот проникнусь

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #260

273. Сообщение от Аноним (273), 13-Фев-25, 20:01   +/
>PHP уже переусложнен в несколько раз от необходимого

Нв php внезапно стали писать не только домашние странички, но и высоконагруженный код для продакшена с кучей фич. Вот и потребовалось столько всего добавить

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #164

274. Сообщение от nc (ok), 13-Фев-25, 20:03   +/
В Go нормальная строгая статическая типизация. Нормальное явное объявление переменных, а не просто по факту использования имени. Это уже огромные преимущества.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #6 Ответы: #276

275. Сообщение от Аноним (273), 13-Фев-25, 20:07   +/
Тем не менее, его можно встретить на некоторых linux десктопах. Тот же pamac в manjaro, или софт из ElementaryOS.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #271 Ответы: #279

276. Сообщение от Аноним (273), 13-Фев-25, 20:13   –2 +/
go не типобезопасен, и толку от строгой статической типизации мало. То же понижающие приведение приводит к ошибкам во время выполнения. Кроме того, для php активно развиваются статические анализаторы, что частично компенсируюет динамическую природу
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #274 Ответы: #286

277. Сообщение от Аноним (273), 13-Фев-25, 20:16   +/
>Ребят, у вас с логикой точно все в порядке?

Вам выше написали, что зависимости уже есть на машине, но в другом проекте. Вы читать умеете?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #258 Ответы: #297

278. Сообщение от _ (??), 13-Фев-25, 20:58   +/
Любая достаточно развитая технология неотличима от магии (С) сами знаете кто ...

Если _это_ для тебя - магия, иы ошибся в выборе профессии, инфа - 146% ;)

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #235

279. Сообщение от _ (??), 13-Фев-25, 20:59   +/
0.1% от 1% процента даёт нам ... считайте сами :)
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #275

280. Сообщение от _ (??), 13-Фев-25, 21:01   +/
Wine в продакшене(С) OpenNET

Теперь я видел всио!(С) :)

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #268

281. Сообщение от _ (??), 13-Фев-25, 21:10   +/
>Уже нет. В 5.0 завезли многоядерность,
>>> The OCaml 5.0.0 release in 2022 is a complete rewrite of the language runtime, removing the global GC lock

О! Во - другое дело! СПС анон@13-Фев-25T14:04 - пойду гляну на выходных.

ПредЪява - снимается! Ocaml неуиноват!(С) :-)

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #250

282. Сообщение от Илья (??), 13-Фев-25, 21:27   +/
> Обычно не требуется писать только под Линукс, и тем более на С#. А нужно и версию запускаемую в том числе на Линукс.

Удивительно, что ещё существуют староверы, которые считают, что дотнет на линуксе как-то не так запускается или вообще с вайном.

Уже лет 9 дотнет крутится в докере

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #268 Ответы: #293

283. Сообщение от Аноним (283), 13-Фев-25, 23:15   +/
Единственная метрика, которая имеет смысл при сравнении языков — потребление энергии результирующим артефактом. Потому что это именно та метрика, которая напрямую конвертируется в деньги. Всё остальное косвенно и зависит от требований момента, предметной области и тому подобных вещей. И такое сравнение Гугл конечно же провёл, ищущий да обрящет. Результаты, там, кстати ожидаемые и без сюрпризов.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #6

284. Сообщение от Аноним (283), 13-Фев-25, 23:21   +/
> Все модно-молодёжные новые проекты лежат на 'microservice architecture', а там Java как то толком не смогла

Не смогла у кого? У опеннетных кекспертов? Охотно верю. Количество новых проектов под любые архитектуры на Яве огромно. В первую очередь потому, что в Яве-экосистеме есть библиотеки высокого качества для любых задач, от хайлоада до обскурных финансовых протоколов. Угадай, на чём работает антиспам у крупных операторов почты. Подскажу, что это не C, не C++, и даже не сабж. Обработка больших объёмов данных (от сотен терабайт на датасет и выше) до сих пор без Явы и Хадупа немыслима.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #191 Ответы: #305

285. Сообщение от Аноним (-), 14-Фев-25, 02:37   +/
>> Синтаксис Go основан на привычных элементах языка Си с отдельными заимствованиями из языка Оберон.

Вообще в книгах не только Си и Оберон в заимствованиях встречается. Там вроде и Паскаль упоминается и вроде бы даже и Пролог!

Ответить | Правка | Наверх | Cообщить модератору

286. Сообщение от Аноним (-), 14-Фев-25, 02:40   +/
Вот go как-раз и рекомендуют применять как безопасный, также как и rust.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #276 Ответы: #307

288. Сообщение от Аноним (-), 14-Фев-25, 03:05   +/
>  А если гоферов станет гораздо больше, то это еще будет и бессмысленный DDoS ресурсов, с которых импортируются зависимости.

Не будет, американцы ещё лет 10 назад начали противостоять DDOS и практикуют хостинг в "облаках". Там достаточно много компьютеров чтобы:
1. Локализовать проблему
2. Выдержать нагрузку
Или вы думаете технологии .Net и Java просто так стали популярными? В последнее время к ним присоединяют JS и Python, но это скорее связано с массовым комьюнити и тема не связана. Посмотрите зарубежные вакансии - много проектов связаны с облачными системами и именно в основном на перечисленных языках. Есть ниша и у PHP, но на этом основная часть вакансий заканчивается.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #135

290. Сообщение от Аноним (-), 14-Фев-25, 03:10   +/
В плане нет? Может вы плохо искали?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #9

291. Сообщение от Аноним (-), 14-Фев-25, 03:14   +/
Хотя как по мне функциональщина Haskell именно в дровах может показать себя лучше.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #9

292. Сообщение от Аноним (-), 14-Фев-25, 03:17   +3 +/
Нормальный язык программирования, я на нем для роутера на Openwrt под mipsel делал сервачок, при этом особо языка не зная. Но с документацией быстро разобрался. Все было просто и понятно.
Ответить | Правка | Наверх | Cообщить модератору

293. Сообщение от _ (??), 14-Фев-25, 04:59   +/
Не надо чтоб крутился, надо чтоб работал!

Но!, справедливости ради - это теперь и самому M$-у надо, так что думаю - доведут.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #282 Ответы: #302

294. Сообщение от _ (??), 14-Фев-25, 05:15   +/
Да такие компании - есть.
Но всё же - посмотри хотя бы 3 major cloud platform - там всё на Go. Не на 100% конечно, просто так вышло что вот для этого вот всего он (Го) - офигенен. Ну и ...
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #236

295. Сообщение от _ (??), 14-Фев-25, 05:20   +/
Воткни новую клаву чере Ю-Эс-бЕ и програмЪ на том на чём программил ... да это магия!(С) ;-)
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #263

296. Сообщение от _ (??), 14-Фев-25, 05:31   +/
Когда тебя завалят на собесе по Го - поймёшь :)

Го - жив ==> hence НЕ идеален. Вот это - нюанс, тупо нужно знать. Гугли отрок, да и пройдёшь собеседование окояЪнное! :)

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #267

297. Сообщение от OpenEcho (?), 14-Фев-25, 06:22   +/
> Вам выше написали, что зависимости уже есть на машине, но в другом проекте. Вы читать умеете?

Еще раз, Го-лэнговский кэш, он общий, - для всех модулей. Если один проект подцепил в зависимости что то сторонее, то оно будет в кэше пакетов доступно для всех других, при условии что новый проект(ы) будет хотеть точно такую же версию зависимости как в кэше. Если же человек не умеет читать документацию, для чего нужен вендоринг и шлепает его во всех своих проектах, то это его и есть проблема, так как он изолирует конкретную зависимость в одном модуле. И даже это не проблема, там куча других возможностей как очень просто перетащить зависимость в любой проект изолируя его от кэша , начиная от ручками, го ворк  и заканчивая своим собственным локальным прокси. Но почему-то очень хочется "как у других", "как привык" - через мэнеджер пакетов. Нет. Это другой инструмент, не npm, со своими правилами и логикой и в первую очередь пытается предотвратить потерю зависимости, а также её целостноть, где каждая версия зависимости имеет свой хэш. И при всем при этом прекрасно работает в офлайне

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #277

299. Сообщение от Facemaker (?), 14-Фев-25, 10:28   +/
Ну вот, например (хотя зачем ты начал обсуждать Rust в теме про Go — ума не приложу):


fn get_config_file_path(dir: &Path, config_path: &Path) -> (PathBuf, PathBuf) {
    let root_dir = dir.ancestors().find(|a| a.join(config_path).exists()).unwrap_or_else(|| {
        messages::unravel_errors(
            "",
            &anyhow!(
                "{} not found in current directory or ancestors, current_dir is {}",
                config_path.display(),
                dir.display()
            ),
        );
        std::process::exit(1);
    });

    // if we got here we found root_dir so config file should exist so we could theoretically unwrap safely
    let config_file_uncanonicalized = root_dir.join(config_path);
    let config_file = config_file_uncanonicalized.canonicalize().unwrap_or_else(|e| {
        messages::unravel_errors(
            &format!("Could not find canonical path of {}", config_file_uncanonicalized.display()),
            &e.into(),
        );
        std::process::exit(1);
    });

    (root_dir.to_path_buf(), config_file)
}


Ответить | Правка | Наверх | Cообщить модератору
Родитель: #245 Ответы: #303

302. Сообщение от Илья (??), 14-Фев-25, 11:54   +/
> думаю - доведут.

Опять 25. Да всё довели уже 5 лет назад.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #293

303. Сообщение от pavel_simple. (?), 14-Фев-25, 12:13   +/
> хотя зачем ты начал обсуждать Rust в теме про Go — ума не приложу):

я?

>

 
>

весьма вырвиглазно, но, наверное привыкнуть можно

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #299

305. Сообщение от Проходил мимо (?), 14-Фев-25, 13:00   +/
Ваш пост про скорость Явы и немыслимость обработки без нее больших объемов данных сделал мой день гораздо веселее :D :D :D
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #284

307. Сообщение от Аноним (273), 14-Фев-25, 18:43   +/
Кто рекомендует? В go нет арифметики указателей, но это не делает язык типобезопасным. Прочитайте определение терминов, прежде чем придумывать
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #286

308. Сообщение от Аноним (273), 14-Фев-25, 18:46   +/
А ещё, падает во время исполнения, прямо как динамически типизированный бидон, ой то есть питон.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #220

309. Сообщение от Аноним (-), 17-Фев-25, 16:08   +/
Раз уж не возбраняется приводить доводы нейросетей, что вот что даёт ChatGPT по запросу «Какой из двух языков эффективнее с точки зрения качества исходного кода: читабельности, простоты написания и сопровождения, скорости выполнения программ: Go или Nim» — то, что ближе мне.

Привожу лишь резюме.

Общий вывод
Критерий    Победитель
Читабельность    Nim
Простота написания    Nim (но Go проще для больших команд).
Сопровождаемость    Go (из-за единообразного кода).
Скорость выполнения    Nim (ближе к C).
Если важна читабельность и скорость → Nim.
Если важна простота сопровождения в команде → Go.

🔹 Go лучше для корпоративных решений и больших команд (безопасность, предсказуемость).
🔹 Nim лучше для высокопроизводительных задач и исследований (скорость, гибкость, метапрограммирование).

Ответить | Правка | Наверх | Cообщить модератору


Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру