Go тред №34 /go/ 3473264 В конец треда | Веб
Go или Golang — компилируемый язык программирования от создателей таких шедевров как UTF–8, язык С, UNIX, Plan9 и других. Go поддерживает типобезопасность, имеет богатую и универсальную стандартную библиотеку и инновационные семантики одновременности: все то, что мы в индустрии называем concurrency и parallelism. На сегодня язык Golang является краеугольным камнем стабильности, прагматичности, де-факто представляет из себя стандарт в мире бэкенд–микросервисов и серверного оркестрирования.

С чего начать:
- В обязательном порядке проходим "Go Tour":
https://go.dev/tour/welcome/1
- Читаем документацию прямо по порядку (пункт "Learning Go"): https://go.dev/doc/
- Ознакамливаемся с общим roadmap по изучению языка и сопутствующих инструментов: https://github.com/darius-khll/golang-developer-roadmap (постоянно обновлялось сообществом)

Литература:
- Донован, Керниган "Язык программирования Go"
- Также книги рекомендуемые для начала: https://go.dev/wiki/Books и https://www.practical-go-lessons.com/ (веб-версия — бесплатная и хорошо подходит для новичков в программировании)
- Книги из списка: https://github.com/dariubs/GoBooks

Полезные ресурсы:
- Сборник patterns и info по микросервисам: http://microservices.io/
- Смотрим видео https://www.youtube.com/channel/UC_BzFbxG2za3bp5NRRRXJSw
- Обновляемый список велосипедиста с пакетами: https://github.com/avelino/awesome-go

Небольшая конфа треда: https://t.me/golang2ch

Прошлый тред: >>3390005 (OP) (OP)
2 3473357
нужно было добавить
https://go101.org/
https://www.practical-go-lessons.com/
17492881352950.jpg447 Кб, 1024x1280
3 3473380
Go перекличку анонов треда, немного оживим обсуждение да и будет интересно кто откуда пришел и сколько нас!

Я пришел из питона, гошку изучаю пол года, работу пока не нашел.
4 3473392
5 3473393
>>473392
1.20 сорри
6 3473468
>>473392
Не пользуйтесь гикс фо гикс там индусы пишут глупости нередко и в нюансах путаются
7 3473478
>>473380
ETL-макака, хочу на го написать прототип сервиса, который будет показывать обычную плоскую табличку, данные для которой будут браться из БД по кучке параметров (период, тип товара, регион и т.п.). Веб-разработкой до этого не занимался, го выбрал потому что прозрачно и без фреймворков. Из альтернатив рассматриваю LiveView в эликсире. На го опыта ноль, соответственно.
8 3473487
>>473380
Я пришел из питона от мира вуза и яшки (АиСД)
Го по сути первый ЯП для продуктовой разработки
Отпахал стажку, работаю в бигтехе
9 3473490
>>473380
Я с нуля вкатился. Ну как с нуля, было десять лет назад в вузике что-то невнятное на плюсах. Всего на вкат ушёл год с небольшим, конкретно на гошку месяца три (я дурак джаву сначала учил). Работаю сенькой в небольшой компании, девять месяцев, полёт нормальный.
17395633839370.jpg141 Кб, 905x603
10 3473546
Платиновый вопрос-оправдано ли писать весь проэкт на го и оправдано ли начинать свой проэет с го?
11 3473606
>>473546
Зависит от деталей.
Возможные варианты ответа:

Да
Да

Да
Нет

Нет
Да

Нет
Нет
12 3473692
>>473380
пришел на работу как плюсо макака, неожиданно оказалось что есть древний сервис на плюсах, которые писали множество людей, которых уже нет в кампании
сейчас сижу переписываю всё на го, ощущения ахуенные, всё таки написание нового лучше чем поддержка старого
image.png6,5 Мб, 3446x2594
13 3473856
>>473380
Пришел из джавы, просто возвали в гуголь я до первого рабочего дня не знал на чём буду писать, оказалось Го.
14 3473902
>>473380
Я пытаюсь перекатиться из дотнета, на сишарпе у меня овер 10 лет в бекенде. Нарисовал в резюме три года на голенге, походу мало, надо рисовать пять. Работу не нашел, но я в хохляндии, тут айти в принципе закончилось, за два месяца ноль собесов.
Алсо что ты там изучаешь полгода? Голанг очень простой язык, литерали си с горутинами.
15 3474029
>>473902
4 месяца если быть точным. Прочел книгу, прошел пару курсов, написал пару пет проектов, поразбирался с кишочками.

Вот блин, а я себе год хотел нарисовать, думаете надо минимум 3 ?
16 3474031
>>473856
Какой офис?
17 3474058
>>474029
Если ты всё равно решил пиздеть, то зачем останавливаться на скромной хуйне? Ерохин вон 6 лет нарисовал и теперь архитектор всей вашей хуйни, спрашивает у нейросетки каких задач вам раздать и пиздует на пляж.
Снимок экрана 2025-06-09 180706.png307 Кб, 720x691
18 3474066
>>474058
хотелось меньше рисков, вкатиться за лоу прайс (200) а потом подтянуться и уже просить 300-350. А если я себе накручу дохуя опыта то будет странно просить мало, а за много и спрос с ходу другой будет. Но видимо придется крутить 3 и просить 250 иначе просто на собес не позовут.
19 3474089
>>474066
300 это самый минимум.
20 3474098
>>474066
У меня есть предположение что человек с пикрила оценивает свою внешность как 7/10
21 3474150
>>474066
В веб-разработке не столько риск роляет, сколько шаткое самоощущение - что могут уволить, задач дать неудобных. Уверенность в своих способностях, особенно на работе, это залог карьерных успехов и благоприятной психологической атмосферы по жизни. Поэтому я бы если и крутил, то только холодный опыт - 4 года? да это фриланс, там так, парочку проектов сделал, по двадцать тысяч за каждый получил и ещё пятёрку премии.
22 3474155
Что тут обсуждать?
23 3474170
>>474155
Тайские бордели, кубинские пляжи, топовую снарягу для горных походов.. В общем, свои хобби в свободное от наёба кабаныча время.
24 3474174
>>474155
А можно компилируемый язык golang, так-то тоже вариант.
25 3474177
>>474174
Ближайшие 1000 постов будут обсуждать к-л чепуху
26 3474199
>>474177
Говоришь так, будто на Дваче можно обсуждать что-то другое.
27 3474213
>>474174
Хватит головной лезть подруг боли не шумные а девушек ничего её жизнь ждать приходится в мою от кроме та
ких большинство. Лидер группы мужчин восседал на тёмнокрасном внушительном коне с двумя самодельными рогами Его гнетущий взгляд обошёл всю собравшуюся толпу Завтра утром наша семья Ду начнёт набирать стражников Если выдержите три удара ученика семьи Ду то станете стражем а если окончите поединок в ничью или даже победите младшего семьи Ду то должность капитана стражи ваша Всего мы набираем двадцать человек!
28 3474573
ооо мужики всем привет возьмите на работу
29 3474633
>>474573
Да не вопрос братиш, набери наши циферки, обкашляем +78002507318
30 3474646
>>474031
Мюнхен.
31 3474677
1.25 rc1 вышел
32 3474706
>>473380
Я пришел стажером студентом в компанию на проект, где была джава и го. Тогда я был полон счастья и мотивации. Но на стажировке я показал себя плохо и не справился даже с самыми простыми стажерскими задачами. Как итог меня оттуда уволили с позором, а тимлид лично мне сказал, что я совсем уж овощем оказался. В команде было еще два других стажера, как итог их взяли в штат, а меня выгнали. Один из них нынче работает каким-то там мидлом или сенькой в AWS в Дублине.

После этой стажировки у меня напрочь исчезла мотивация что-то изучать и делать. Я впал в нечто вроде депрессии и апатии, от которых не избавился до сих пор, хотя прошло уже 5 лет.
Как итог я с тех пор сменил несколько работ. В основном везде писал на голанке, но с багажом легаси в виде питона, джавы или пхп. На каждой из моих работ я зарекомендовал себя как лоуперформера. И почти каждый раз меня увольняли спустя 7-20 месяцев. Просто ставили встречку с тимлидом, хуман ресурсом и мной и предлагали уйти по собственному. Я всегда соглашался и покорно писал заявление, после чего уходил на поиски новой работы. Постепенно начал скатываться во все более помойные места, мутные галеры, гос и около гос. Сейчас вот досиживаю свои последние дни на гос галере. Кабан еще весной объявил, что новых проектов у нас нет, поэтому мы сворачиваемся. На днях меня на бенч посадят, так как новых проектов нет. А потом придется уволиться либо мне, либо просто уволят меня.

На го писал в основном круды, ничего супер интересного. Финтех (обычный, не крипта) и немного электронного документооборота. По сути просто перекладывал джейсоны и много времени ковырялся в легаси монолитах на джаве и питоне. На сам голанк мне уже давно похуй, я даже не знаю что там после дженериков появилось нового. Ничего не читал и не изучал нового уже года три точно. Просто похуй стало и все.
33 3474714
>>474706

>AWS в Дублине


Было бы чему завидовать. Амазон в штатах считается хуитой с паджитами и потогонкой, примерно как наш яндекс. Амазон в Европе - это полное днище, там одни SRE дежурят на онколах до нервного срыва, а потом их выгоняют нахуй.
34 3475137
>>474706
Тоже 3 года толком ничего не учил, настроение подпорчено. Сейчас правда английский стал учить каждое утро, жду сладкого договорнячка чтобы укатить в сербостан.
35 3475255
>>474714

>Амазон в Европе - это полное днище, там одни SRE дежурят на онколах до нервного срыва, а потом их выгоняют нахуй.


Может в AWS и по другому, но в остальном Амазоне нет SRE, там девелоперы дежурят и хер ты их заставишь дежурить бесплатно, тупо законодательство не позволит. Да и выгнать сложно, максимум давить, чтобы сам ушел. Это конечно не отменят того факта, что Амазон помойка.
36 3475258
>>475255
>>474714
Конкретно в AWS дежурства у разработчиков есть и причем очень тяжелые. Очень много вещей в AWS до сих пор не автоматизировано и требуют ручных действий разработчиков на проде.

И да, SRE у них нет, весь груз дежурств кладется целиком на разрабов.
37 3475260
>>475137

>жду сладкого договорнячка чтобы укатить в сербостан


Я так понял, тебя не выпускают из страны? Жаль конечно. Мы то хоть можем в любой момент на самолет до Белграда прыгнуть и улететь. Но если у тебя гражданство страны У, то зачем в Сербию? У вас же гораздо больше локаций открыто по сравнению с гражданами страны Р.
38 3475263
>>474677
И чё там?
39 3475307
>>475260
С хохлопаспортом мир закрыт. Локация хохляндия - автоматический отказ на линкедине. Мы хуже Северной Кореи, там выезд закрыт, но хотя бы на улицах не пакуют и не надо прятаться по домам. Ты даже не представляешь, с какой искренней радостью я читаю новости о наступлении российской армии. Наверное, так себя чувствовали евреи в немецких концлагерях, когда слышали о приближающихся советских войсках.
40 3475379
>>475307
А если поставить другой локейшн и работать через впн — всё равно нахуй будут слать из-за паспорта цеевропы? Наверняка же какое-то количество Тарасов айтишничает успешно сегодня.
41 3475401
>>473546
Нах надо, возьми сишарп
42 3475442
>>475307

>С хохлопаспортом мир закрыт.


Дурик, Страна У сейчас фактически принята в ЕС, Ты можешь приехать в любую страну ЕС и получить разрешение на проживание и работу по одному паспорту только, по TPS. Более того и в Америку можно по U4U съехать. О таком положении граждане Страны Р только мечтать могут.
43 3475476
>>475442

>Ты можешь приехать


Вот только с этим моментом есть небольшие временные затруднения. А на удалёнку не берут.
44 3475566
>>475442

>Ты можешь приехать


Не можешь. Доедешь до ближайшего блокпоста в паре километров от дома, а дальше бусик и потужный наступ на русские мины.
45 3475618
>>475263
Там ничё важного,очередные рейс кондишены обсуждают наверно. Предусмотренная виртуаулизация зло ,когда во всей коммерческой сфере привыкают Что всё у них из коробочки должно поставляться. При этом не берут в расчёт что тащится за самой коробочкой и в итоге Кпд по упрощению вовлечениях новых сотрудников нулевое а как бы изначально поинт именно в этом состоял. Для дураков и от дураков технологический процесс но это поверхностное мнение ,кончено вот бы кто переубедил...
46 3475621
>>475618
А как же новый пакет для работы с json?
47 3475639
>>475260
Не я из Р, просто английский плохой поэтому пока не выехал. А договорнячка жду чтобы из-за красного паспорта не отказывали.

Хотя У паспорт у меня тоже есть, правда просроченный.
48 3475648
>>475621
Джейсон ну да и джейсон, суть не в этом у меня оно фруатрейшон не вызывает. Как спроектируют систему вот от этого Много зависит,а что там на самом деле? вот да новая технология по исполнению assembler. А может быть высокогнагруженный проект с сложнейшими вычислениями и умудрённой архитектурой.... всё равно что кошку приманивать на хлеб.
Многие люди в наш век совсем не понимают в маркетинге. печально.
49 3476638
Мертвый тред мертвого языка
50 3476647
>>476638
ИТ мертво, смирись. Новых проектов теперь вообще не будет. Иногда будут нанимать на короткий срок "веб мастера" чтобы поправил баги повылазившие после нейронки.
51 3476685
>>473264 (OP)
Кулстори про авито,
Ходил к нам на собес на техлида команды из 4 человек. Сам я и так техлид в одной крупной продуктовой конторе.

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

такие дела.

Вообще, во всех этих конторах всегда есть чуваки, которые там просто очень давно сидят и от того, получили какой то авторитет в компании. Который они всеми силами стараются сберечь. И если видят что к ним хочет пойти работать кто-то лихой и шутливый, то для таких толстяков - это угроза
52 3476694
>>476638
До руби еще далековато
53 3476714
Найм в гоше не ожил? Собеседуетесь или тухляк?
54 3476730
ооо мужики здарова возьмите на работу пж)
55 3476732
>>476694
Ладно руби, там вон эликсирщики всех убеждают в своей невъебенности!
56 3476743
>>476732
Так эликсир же реально имба без аналогов
57 3476764
>>476743
Знаю, у меня просто зависть...
58 3476768
>>476730
Вон выше уже наняли чела, и ты присоединяйся: >>474633
59 3476773
>>476685
Знакомая паста или ты и есть тот анон? травма настолько сильна?
60 3476797
>>476781 (Del)
Если это не какая-нибудь паста о которой я не знаю, то ты походу шиз
61 3476860
>>476743
Аналаговнет
62 3476864
>>476797
Да это какой-то ретард походу нейросетью пукает, в бигкек треде таких же постов навалом.
63 3476939
>>475476
>>475566
Ну вон папич-то как-то уехал
image.png75 Кб, 2434x304
64 3477029
>>473902

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


лол
буквально месяц назад устроился в амер компанию через доу
65 3477330
>>477029
Ты на какую зп вкатился? С каким опытом? Самое главное, локация у тебя какая? Вангую не хохляндия.
Я на доу сижу несколько месяцев. Начал с 7к, сейчас опустил до 4к, было полтора собеса с хрюшками и ноль технических. Вакансии одна упоротее другой, будто нейросеть обучают.
66 3477385
Где фильтры?
image.png461 Кб, 2498x1112
67 3477388
>>477330
4k усд, 3 года опыта
тут главное уметь себя продать
68 3477401
Нарисовал себе 3 года и переделал свое питон резюме в го.
Жду сотню hr в личке
69 3477405
>>477401
а ты хитер, я тоже.
70 3477425
>>477388
Покажи, что написал в резюме. Походу мое резюме не проходит через мясную нейросеть.
71 3477448
Я кажется нашел золотое резюме, спиздил у какого-то джависта с hh , залил себе на леввый акк и уже пришло 3 hr за сегодня.
Я богат, спасибо господи
72 3477492
>>477448
>>477401
мужики у меня золотое резюме вам надо?
мимо взяли на работу java 45к
73 3478075
>>477492
конечно
показыай
74 3478093
Есть годный курс по go с реальными микропроектами? типа https://programming-25.mooc.fi это прям мой идеал курсов
чтобы автопроверочки ммм
75 3478095
>>473490
сразу на сеньора прыгнул? Есть/был ментор?
76 3478099
>>477388
что за доу?
77 3478114
>>478099
Developers Of the UK
78 3478142
>>478099
Сайтоу работоу у хохлоу dou.ua
79 3478149
Это правда что хтмл файлы отдает nginx а го или что ли бо иное обрабатывают логику?
80 3478151
>>478149
Если статика, то лучше nginx, но зависит от нагрузки.
Тебе же никто не запрещает писать на Go vasyan-shop.ru с 100 посетителей в сутки. Там заморачиваться с nginx смысла нет, Go не хуже справится.
81 3478158
>>476773
Это я и есть, да до сих пор бомбит
82 3478322
>>477388
Так ты хохл, в РФ с 3 годами опыта даже на собес не попадешь, а если заикнешься про 4К баксов тебя сразу обоссут. Может тоже в ххлы податься... гражданство есть:)
83 3478434
>>478151
Для такого и вордпресса хватит
84 3478554
>>478322
там выше писали что в укр айти кончилось
85 3478562
>>478554
Да но те компании, что еще остались, работают на барина и у них зепки выше.
86 3479084
>>478562
Все компании давно съебали в Польшу и нанимают там. На джини это хорошо видно: если адекватные требования, а не фулстек-тимлид-грузчик зп до 2к, то локация строго не хохляндия. Когда вакансия появляется на рынке, сначала ищут среди местных, потом среди польских и румынских галер, и только потом, когда все отказались, вакансия доплывает сюда в хохлоину. Мы литерали выгребная яма айти.
image.png44 Кб, 497x282
87 3482055
Я тут продолжаю изучать гошку и возник вопрос.
А как вы резолвите в true проекте методы GET, POST, DELETE
Как на пикрил или может через мапу хранящую метод -> реализация (тип джава стайл).
88 3482084
>>482055
Тебя забанили в копилоте? Это литерали вопрос для нейросети.

func main() {
http.HandleFunc("/user", func(w http.ResponseWriter, r *http.Request) {
switch r.Method {
case http.MethodGet:
getUserHandler(w, r)
case http.MethodPost:
postUserHandler(w, r)
case http.MethodDelete:
deleteUserHandler(w, r)
default:
http.Error(w, "Method not allowed", http.StatusMethodNotAllowed)
}
})

fmt.Println("Server running at http://localhost:8080/")
log.Fatal(http.ListenAndServe(":8080", nil))
}
89 3482090
>>473264 (OP)
Подскажите как оплатить подписку на IDE от Jetbrains и получить доступ к их AI Junie и другим ИИ вроде клода или чатгпт? На авито какие-то мутные схемы с предоставлением кредов до акка и переводом по сбп мутным личностям...
90 3482134
>>482055
Не так давно в стандартном хэндлере поддержали методы, в доке пакета об этом мизер https://pkg.go.dev/net/http#hdr-Patterns-ServeMux, тут подробнее https://go.dev/blog/routing-enhancements
До 1.22 проблема всегда решалась через chi (echo, gin, etc...), либу. люди привыкли и до сих пор сидят на любимых либах
>>482084
А вот тебя нейросети точно заменят.
91 3482136
>>482134
Точнее в доке пакета написано норм, просто я даже зная про фичу с трудом это там нашел.
92 3482182
>>482134

>тебя нейросети точно заменят


>за минуту решил абсолютно стандартную типовую задачу с помощью ии


>или два часа сидел изучал доки, чтобы написать на 10 строк меньше кода


Ты же знаешь, кто из нас первый вылетит на перфоманс ревью.
93 3482218
>>482055
https://habr.com/ru/companies/avito/articles/805097/
И чатгопота тебе в помощь
94 3482250
>>482090
Покупаешь у барыги в тг боте одноразовые предоплаченные карты VISA любого номинала и не ебёшь себе мозг. Да, $20 карточка обойдётся в 30, ну да и хуй с ним, зато никаких кредов хуй пойми кому.
95 3482254
>>482250

>у барыги в тг боте одноразовые предоплаченные карты VISA


Удачи отлететь по 115фз. К тебе потом спецура придет с вопросами, лол
96 3482407
>>482254
Никто даже жопу от стула не оторвёт за мои 2500р, которые я не перевёл хуй пойми кому, а купил услугу у юрлица через нормальный эквайринг банка.
97 3482625
>>482084
У меня нет копайлота вообще.
Gpt выдал два разных результата.
+ я хочу с живыми людьми пообщаться, ида на хер
98 3482628
>>482134
>>482218
Спасибо.
ChatGpt выдал вчера разные варианты, но если честно я это изучал в 5ть утра уже и сам плыл.
99 3482866
вот надо объявлять интерфейсы в месте использования, но как их называть, если мне нужен один и тот же интерфейс с одинаковыми методами в разных файлах одного пакета?
Например, у меня есть пакет handlers, в нем лежат файлы с для разных эндпоинтов. и вот в некоторых из них пересекаются service, которые я использую. по какому принципу нейминг дается? есть какое-то общее правило для этого?
100 3482943
>>482866

>если мне нужен один и тот же интерфейс с одинаковыми методами в разных файлах одного пакета?


То создаёшь в нём файлик interfaces.go и описываешь интерфейс в нём? Не понял вопрос. Если интерфейсы должны быть разные, несмотря на одинаковые методы, то держишь в разных файлах и называешь конкретно там serviceForHandling, serviceForAuth, чтобы прям ясно было из названия, чё это за сущность.
101 3482952
>>482943

>serviceForHandling, serviceForAuth


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

>файлик interfaces.go


и это будет считаться за объявление в месте использования? или под местом использованием подразумевают именно пакет, а не файл?
102 3482967
>>482952
Дай угодаю: ты перекатываешься из джавы и не можешь без спринга в заднице? Напиши три функции auth1, auth2 и mainLogic, в первом хендлере вызови auth1 потом mainLogic, во втором auth2 и mainLogic. На голанге пишут просто, без охуительных абстракций, это не джава.
103 3483189
В касперский собесился кто-нибудь?
104 3483223
>>482952

>и это будет считаться за объявление в месте использования? или под местом использованием подразумевают именно пакет, а не файл?


Будет. Подразумевают разное по ситуации, но вынести отдельно интерфейсы (общие для пакета), модели данных, кастомные ошибки и параметры конфига пакета с дефолтными значениями – это база. Но опять же, только в тех случаях, когда это имеет смысл. Если например весь пакет описывает 1-2 сущности, то нахуй не нужно (и интерфейс скорее всего тоже).
105 3483275
>>482967
у нас корпоративный фреймворк для го, а еще для петухона и с++. авторизацию он берет на себя, от меня только ямл с описанием хендлеров и описание их авторизации в нем
>>483223

>Будет.


понял, спасибо
106 3483291
>>483189
Зачем? Компания в санкционном sdn списке. По факту туда идут скуфы досиживать до пенсии веслая за мелкий прайс. Ты бы еще в сбер пошел, лол
107 3483461
3-4 мидлвара перед основным обработчиков в роуте это норма?
1750788748597.jpg118 Кб, 966x244
108 3483463
Втф, везде только пустые структуры и используют
109 3483481
>>483463
Так это Керниган писал. У него в ed напечатать true быстрее, чем struct{}{}. А подсветки и подсказок нет по определению. Поэтому не стоит удивляться таким замечаниям.
110 3483546
Должен был быть собес завтра (уже сегодня) в сбер на декретную вакансию.
Хочу чекнуть время и понимаю что hr удалила диалог в телеге

Я в ахуе вообще
111 3483547
>>483546
Думал в мвп тред пишу, sorry
112 3483696
>>483463
Он прав. У true лучше семантика. Когда-то какой-то поехавший байтоеб пукнул про struct{}{} и теперь джуны бездумно везде повторяют. Але, у вас язык со сборкой мусора, ваша экономия сраного байта ниочем. Тем более, что каналы - это самый медленный примитив синхронизации. Раз уж собрались байтоебить, то идите до конца, до атомиков и лок фри.
113 3483984
>>483696
Дело не в экономии байта, а в читаемости кода. Когда ты видишь мапу с пустой структурой, то мгновенно понимаешь, что перед тобой просто сет. А когда там есть какое-то значение, которое может нести полезную информацию, это уже не очевидно.
114 3484141
Есть тут пацаны из телекома? Нужна либа человеческая для ASN1, та что в стандартной библиотеке ни то что для использования не годится, её даже открывать стыдно. Считать поток можно только полностью(охуенно когда файлы с коммутаторов могут быть по 100-200 метров), вложенность поддерживает только одного уровня(при этом сама весь объект кладет под доп уровень вложенности лол). Хочется сместить джаву с доминирующих позиций в компании, но там есть bouncycastle, который с аснами работает идеально, вот прям не доебешься, ещё и комьюнити огромное. Хотя бы простой маппер из асн потока в мапу бы достать
115 3484190
>>484141
чел, мы умеем только джсоны перекладывать по микросервисам
116 3484192
>>484141

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



> на какое-то говно, которое не может нормально выполнять главное требование



Как называется эта болезнь
117 3484294
>>484141

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


А зачем? Звучит как въебать деньги и время, так ещё гоферы стоят дороже джавистов сейчас. Как ты кабану продашь такую тему?
118 3484296
>>484192
>>484294
Само собой я хочу сделать это из корыстных побуждений перетянув на себя басс фактор
119 3484299
>>484296
Лел, так тогда напиши свою либу. Нет бас фактора круче, чем кастомный фреймворк без документации.
120 3484301
>>484299
Я думал об этом, но тут придется реально напрячься тк нужно будет спеку про протоколу плотно прокурить. Плюс по трудовому договору все что ты создашь во время работы на кабана это собственность кабана
121 3484349
>>484296
Это понятно, а как ты кабана убедишь, что это нужная темка?
Или он еблан, который не понимает, что для бизнеса нет смысла менять работающее и документированное решение с кучей спецов на рынке?
122 3484483
>>484301
А чисто в теории, если писать и коммитить "из дома"по крайней мере все коммиты в нерабочее время, можно же будет качнуть, что это не принадлежит кабану в случае чего.
Продать ему идею только, пусть думает, что его, а когда будешь уходить, то как будто бы все равно
123 3484627
>>484349
Это уже дело техники, открыл спеку протокола и понял что сложно. Но думаю это самый действенный вариант, тем более если получится создать что-то юзабельное
124 3484683
>>484483

>можно же будет качнуть, что это не принадлежит кабану


Скорее нет чем да. Чтобы это провернуть нужно очень зорошо понимать что и зачем ты делаешь и как жто правильно щадокументировать.
Начни ГК РФ Статья 1261, прочитай. Она сошлётся на другую статью, её тоде прочитай.
Ну и ТК стоит осмыслить
125 3485173
Ну и нахуй ваш Go нужен? Быстро объяснили бля, петухи.
126 3485407
>>485173
>>485173
Не нужен,когда есть нода
127 3485653
>>485173
Учи-учи, там разберёшься, расскажешь заодно.
128 3485715
>>485173
Легче писать, чем на Си. Бохатая стандартная либа на уровне петухона, при этом го быстрее. Можно писать консольные проги, можно веб сервисы. В общем, лучшее от миров Си и петухона.
129 3485721
>>485715
Нет фреймворков-значит велосипедить кучу кода
130 3485732
>>485407
JS должен умереть.
131 3485737
>>485732
Но это невозможно
132 3485755
>>485737
Если он полностью и не умрёт, то со временем вылетит нахуй оттуда, где он не нужен, но сейчас используется.
133 3485883
>>485721
Так тебе за это платят, ещё и больше, чем на других стеках с их развитыми экосистемами и фреймворками на любую залупу. В чём проблема-то? Копипастнул велосипедный бойлерплейт, пять сторипоинтов себе записал, едешь в кальянку.
134 3485889
>>485883
Го – это язык, придуманный прошаренными программистами для того чтобы кайфовать от разработки. А не очередная пердольная хуета для красноглазых дегенератов.
135 3485927
>>485721
Наоборот, тебе не нужно плодить кучу абстракций, чтобы подстроиться под фреймворк. Ты пишешь только то, что тебе нужно.
136 3485968
>>485889
Почитай официальную документацию, и ты увидишь, что Go - от красноглазых дегенератов. Хуже он этого, кстати, не становится.
137 3485971
>>485968

>от красноглазых дегенератов


От тех, что просекли фишку в жизни и обоссывают комитет С++ по кд.
138 3486078
Какой фичи не хватает языку ГО?
139 3486127
>>486078
Гомоиконичности.
140 3486128
>>486127
Для этого надо писать язык с нуля
141 3486504
>>485715

>Бохатая стандартная либа на уровне петухона


А удаление элемента их середины списка уже завезли?
142 3486506
143 3486758
>>486504
А давно в го есть списки?
144 3486884
>>486504
Ты сначала изучи как это работает под капотом, а потом такие вопросы задавай, умник херов.
image.png73 Кб, 284x177
145 3487081
>>486758

>А давно в го есть списки?


Рядовой шутник, покажи свой go-face!
Стикер63 Кб, 177x200
146 3487083
>>486884

>Ты сначала изучи как это работает под капотом, а потом такие вопросы задавай, умник херов.


А гоферы продолжают рваться от таких простых вопросов.
147 3487194
>>486504
Для слайсов и мапы же завезли пакеты с методом удаления недввно
go-face.png338 Кб, 548x747
148 3487220
Стикер127 Кб, 200x200
149 3488196
>>487194
Такой удар Питон не вынесет! Кстати документацию https://go.dev/wiki/SliceTricks не обновили и там по прежнему советуют что-то на хаскеле
a = a[:i+copy(a[i:], a[i+1:])]

А вообще подход к дизайну языка в Go это отдельный вид современного искусства. Была функция math.Max() которая работала только с float64, что бы сделали в скучных языках? Добавили бы generic версию. Что делают в Go? Правильно! Ебашат встроенную функцию max()!
Такая же херня со слайсами, что-то прям в язык засунули, а что-то в стандартную библиотеку.
150 3488203
>>488196
Ты постепенно начинаешь что-то понимать про го. Практически любой говнокод или нейрослоп (ну в пределах разумного) можно обосновать, сослаться на имплементацию чего-то в самом языке, запушить в прод и наслаждаться зепкой ×2 от питониста из соседней команды.
151 3488368
>>488203
Язык чтобы велосипедить и писать кучу кода-следовательно больше зарабатывать?
152 3488463
>>488368

>велосипедить и писать кучу кода


Это ты ооп-first языки описал вроде жавы и шарпа.
153 3488567
>>488368

>писать


Нет, пока ещё не понял.
154 3488803
Это правда,что писать многопоточный код го то еще приключение?
155 3488815
>>488803
Не, хуйня какая-то.
156 3488818
>>488803
Так же, как и везде. Есть атомики верченые, есть RWMutex дроченый. Есть каналы, как в эрланге, ты охуеешь их отлаживать. Асинхронность захардкодили в самом рантайме: когда ты делаешь блокирующее чтение на сокет, горутина сама засыпает и не отсвечивает, даже await писать не надо.
175139893186045503.mp4192 Кб, mp4,
854x480, 0:02
157 3488830
Привет ананасы. Есть смысл вкатываться в говняк девопсу сегодня если с агентами получается простые утилиты писать и в целом чет даже работает?
158 3488878
>>488830
Не, расти в старшего по своей ветке прокачки скорее. Вкатываться в разработку будет только сложнее, и скоро увидишь, как все эти отчаявшиеся вкатуны таким же валом повалят в девопс/аналитику. Вырасти до сеньора до того как эта волна привалит.
159 3488885
>>488830
а почему ты хочешь в гошку, вилки с девопсом не сильно разные, тип просто не нравится девопс?
160 3488894
Я тут понял что поднатарел в го и дальше сидеть задротить смысла нет, легче сходить на пару собесов обосраться и научиться после них большему. Мигрирую с джабы потому что там рухнум тотальный (нет собесов у меня).
Что у вас с наймом? Хочу резюме заебенить.

На самом деле го учил для себя по приколу ранее, но тут рухнум случился и это может оказаться полезным.
161 3488895
>>488830
А стоит ли с бека вкатываться в девопс, потому что бек заебал (джаба/пхп/го) и на паре работ из-за отсутвия девопсера делал какие-то мелкие таски + администрировал линукс чуть чуть (по части бекэнд приложух только) и в принципе было интересно + получалось.
Роудмапы может есть у кого в загашнике валидные
162 3488979
>>488878

>скоро увидишь, как все эти отчаявшиеся вкатуны таким же валом повалят в девопс/аналитику


Ты из 2015 пишешь? В аналитику уже минимум лет 5 всякий сброд лезет.
163 3489076
>>488818
А по умолчанию любая прога выполняется в один поток?
164 3489306
>>489076
Нет, дефолтно будет минимум 3 машины и 5 горутин, из которых 4 у сборщика мусора.
165 3489315
>>489306

> 3 машины


Не понял.Вот есть 4 ядра у проца,сколько ресурсов займет выполнение к примеру пересчитать массив?
166 3489317
>>489315
А сколько надо?
167 3489322
>>489317
все 4 ядра
168 3489331
>>489322
И будет 4 ядра-1 горутина
169 3489341
>>489322
Заведите заявку номер 1488
170 3489344
>>489331
Схуяли минус одна? Сисмону одна, а сколько gc съест не понятно
171 3489348
>>489344
Это не минус,просто 1 горутина
172 3489413
>>489315
В этом случае на одном будет твой массив пересчитываться, ещё на двух будет GC крутиться. Планировщик отдельную машину не использует. Это если очень дефолтно и сферовакуумно.
173 3489417
>>489413
А два массива в двух циклах без включения потоков в коде через go?
174 3489476
>>489417
Что значит без включения потоков? В голанге код исполняется в горутинах. Планировщик берет свободный поток из пула и на нем запускает горутину, пул пустой - горутина ждет в очереди. Раскидыванием потоков по ядрам занимается операционка. Есть N свободных ядер процессора - потоки бегут одновременно, нет - по очереди.
175 3489477
>>489476
писать go перед функцией
176 3489478
>>489477
Тогда это одна горутина, код выполнится последовательно.
177 3489479
>>489478
А количество ядер влияет на скорость исполнения?
178 3489608
>>489417
Они же у тебя без явного параллелизма в коде будут исполняться последовательно. Какой язык тебе два цикла будет исполнять параллельно без явного указания, что их можно исполнять параллельно?
179 3490895
Ты дурачок понял что ты.mp4127 Кб, mp4,
720x1280, 0:02
180 3491235
>>488830
Конкуренция в разработке намного выше, чем в Девопсе. Годных девопсов вообще довольно мало, а знающих Го и того меньше. Ты буквально хочешь заменить яичницу с колбасой на то, что выпало из жопы собаки.
Я вот занял свою нишу и сижу не отсвечиваю, зато мне работодатель пяточки лижет и пису сосет, лишь бы я не принял чужой офер.
181 3491461
>>488979
Лол, а кто еще может лезть в аналитику? Это же литералли работа как в омэриканских фильмах про депрессивный офисный буллшит джоб.
182 3491593
>>491235
А чего так сложно девопсу выучить го?
Вкатываюсь сейчас из разработки ибо заебала + конкуренция (причем даже не со спецами, а зачастую с наебщиками)
Последние собесы - проверка на то вру я или нет, заебал этот цирк
Ну и нравится девосовские штуки на самом деле

Думаю месяца через 3-4 буду собесится уже

> Годных девопсов вообще довольно мало, а


ТАк вообще про всех спецов можно сказть и говорят тащемто
183 3491637
>>491461

>а кто еще может лезть в аналитику?


Когда я учился в вузе и изучал аналитику параллельно, там были в основном математики (ну или всякие социологи, которым нужна прикладная статистика). То есть люди хотя бы минимально понимающие, что они делают.
У бизнеса было такое же ожидание - вместо того, чтобы нанимать отдельно математика и разработчика, можно нанять одного чела, который будет разбираться и в том, и в другом (пусть и хуже чем каждый отдельно в своём). А в реальности получилось, что аналитика сейчас засрана людьми, которые статистику вообще не знают, просто по бумажке хуячат стат. критерии, которых они не понимают. И при этом они ещё и код писать не умеют. Зато дешево.
184 3492014
Зачем нужен голанк?
185 3492017
>>491637
Я из биг даты разраб (дата инженер/разраюотчик на поддержке проекта)
У нас сейчас нас сокращают и нанимают фуллстек аналитиков которые на пайчарм пишут etl потоки под спарк и сами там что-то делают
Такие тенденции в кризисе
186 3492119
>>492014
Чтобы писать сайтики и бложики
187 3492229
>>492017
Я видел, какие etl "потоки" пишут аналитики, там обычно мрак, который надо переделывать после них. Так что после них работа точно будет.
188 3492257
>>492229
А можешь, пж, на словах описать что там не так? Работаю дата инженегром самоучкой, хочется конечно не допускать ошибок
189 3492276
>>492257
Основная проблема - качество кода. Банально не умеют делить код на функции и модули. Хуячат вложенные циклы на 4-5 уровней с копированиями внутри. На каждый пук тащат библиотеки, когда то же самое можно без проблем сделать стандартной либой.
Аналитиков обычно учат писать в ноутбуках, а там на порядок ячеек плевать, потому что можно руками перезапустить только нужную часть. Поэтому писать обычные скрипты они не умеют, для них это что-то инородное. Им проще в каждой ячейке поставить порядковый номер, в котором нужно эту ячейку запускать, вместо того, чтобы нормально оформить всё.
Если пишут код для забора данных из api, то либо будут долбиться бесконечно, несмотря на таймауты, либо будут перекачивать по несколько раз один файл, потому что логи для лохов видимо.
Это очень кратно и поверхностно. В общем, вещи, которые понятны и привычны разработчикам, аналитикам чужды. Поэтому к обычному коду лучше их не подпускать. Пусть в ноутбуках дальше играются.
190 3492425
>>492229
Ну бизнесу этого достаточно и у меня уже 3 коллеги получили свои увольнительные катлеты и ушли искать другую работку (1 крупный если не крупнейший банк цвета травы).

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

Сам я на самом деле не такой уж и дата инженер (работаю им последний год), залетел потому что предложили деняк нормально и работа оказалась чиловой (после ебке на стратапе в 2 года). До нг чилили попреживая в спарк и проект (фикся баги), а потом сунулся искать работку на джабе преимущественно в вебе, а там рухнум тотальный и на собесы не зовут.
Сейчас учу питон и буду на два рынка искать работу (джаба/дата).
191 3492625
>>491593

> Последние собесы - проверка на то вру я или нет, заебал этот цирк


Ты думаешь на вакансиях девопса этого нет?
192 3492738
>>492276
Под ноутбуками ты имеешь ввиду что-то типа юпитера?

Но в целом суть ясна, вроде так не делаю, следовательно все не так плохо у меня. Спасибо за развернутый ответ
193 3492757
>>492425

>бизнесу этого достаточно


Не спорю. У большинства компаний объём данных такой, что можно на одной машине всё посчитать, никакие хадупосраки там не нужны. И орава дата инженеров и аналитиков для поддержки этого все тоже не нужна. А когда нужен отчёт в эксельке, и он делается не 20 секунд, а 10 часов, тогда и задумываются, те ли люди вообще занимаются этим.

>буду на два рынка искать работу (джаба/дата)


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

>>492738

>Под ноутбуками ты имеешь ввиду что-то типа юпитера?


Да.

>все не так плохо у меня


Если ты задумываешься "а как правильно?", то ты уже лучше 98% залётных через курсы аналитиков.
194 3493755
Привет, пишу на ГОвне месяцев 8. Можете скинуть какой-то репозиторий с GO-way'ным крудом? Хочу наши сервисы сделать более гошный/подспиздить бестпрактиз
пока подглядываю в гайдлайны гугла
195 3493756
>>493755
Алсо, я правильно понимаю, что указателями лучше пользоваться пореже? Вот тут статья, где у пчела проблемы с ресурсами из-за того, что все optional-поля указателями сделали
https://habr.com/ru/companies/oleg-bunin/articles/874202/
196 3493760
>>493756

>Алсо, я правильно понимаю, что указателями лучше пользоваться пореже?


Нет, стоит пользоваться ими почаще. У чела очень редкий кейс, хайлоад, причём хайлоад, который упирается в процессор, а не в сеть или бд. С вероятностью 99% ты никогда в жизни с его проблемами не столкнёшься, и стоит писать просто и удобно, а не оптимизировать то, что не нужно оптимизировать.
Если станет нужно – спишешь себе пару недель на на этот эпик и представишь на перф ревью, когда будешь просить повышение.
197 3493761
>>493756
Яндексоид - это диагноз нахуй. Литкодом ебут, деревья крутят, а потом выходят на работу и пишут лютую дичь. И это не джаваскрипт макака, это сишник. Зачем вместо айди хранить указатель на айди? Чтобы что? Пустое значение - бля да 0 это пустой значение для айди. Конечно, если жидко насрать указателями по миллионам структур, жц будет ебать цпу.
198 3493766
>>493761

>Зачем вместо айди хранить указатель на айди?


Ты джейсоны с иксемелинами вообще перекладываешь?
199 3493775
>>493766
Ну будет у тебя в поле айди 0, значит всё, не задано. Случаев когда надо различать пустую строку и nil очень мало, как правило это всегда означает что значения нет.
200 3493784
Почему нет bcrypt из коробки?
201 3493793
>>493775
Дохуя таких случаев, когда в документе должна присутствовать либо одна структура, либо другая (сведения об ИП или сведения о юрике). Либо одно поле, либо другое (госномер ТС или инвентарный номер трамвая). Ебанёшься перекладывать это без omitempty, особенно если присутствует XML, для которого не завезли omitzero, да и вся эта хуйня всё равно не помогает против вложений групп, когда в свойствах прописано xml:"group1>group2>group3", без указателей всю эту хуйню насоздаёт даже с omitempty, даже если в конце nil.
202 3493835
>>493766
У них там не джейсоны и не хмли, у них внутрення хуйня. Взять 8 байт как указатель и записать туда ноли - это ок это литкодно, деревья крутятся кпи мутится. Взять те же 8 байт как число и записать туда ноли - это нет. Самое интересное, они потом убрали указатели и стали просто хранить числа, нахуя было делать через жопу.
203 3495284
>>493760
>>493761
Мне эту статью скинул старший товарищ смежник, выше и по грейду и по опыту в го/разработке/etc, в качестве аргумента к замечанию, что очень много указателей в структурах структуры, которые пихаются в бд, там много опциональных полей было, когда ревьюил мой код
204 3495326
>>473380
пытаюсь выкатиться с .Net, устал от него, изучаю ГО, пока нравится и как будто в долгосроке выгоднее будет.
205 3495341
Мамкины хацкеры и прочие элитарии призываются в тред.

Итак есть библиотека, в ней определен приватный тип

>type constString string


и функция

>func DoSomething(str constString)


мне нужно вызвать эту функцию. Я без проблем могу её вызвать с untyped string constant

>DoSomething("abc");


Но никакую переменную типа string я туда передать не могу, потому что типы не совместимы. И кастануть явно к приватному типу - нельзя. Я нашел как через unsafe можно кастануть приватный тип к своему, но как кастануть стандартный тип к приватному, я не нашел.
206 3495344
>>495341
Почему компилятор вообще такое разрешает?
207 3495362
>>495341
Рефлексия
208 3495650
А тема многопоточности тяжело дается
209 3495671
>>495650
RWMutex. Теперь ты знаешь многопоточность в голанге.
210 3495673
>>495671
Конешно,только вот проэктирование кода для многопоточности хреново у меня получается
211 3495683
>>495673
Что значит проектирование кода для многопоточности? Написать m.Unlock()?
212 3495716
>>495344
Потому что другого способа объявить значение типа privateString кроме как "ABC" нет. Так что ты просто объявляешь его "по месту".

>>495362
Спасибо капитан, помогло нет
213 3495717
>>495671
Когда завезут типобезопасность?
214 3495727
>>495716

>Так что ты просто объявляешь его "по месту"


То есть это специально так сделано, чтобы ты не объявлял переменные, даже через const?
215 3495774
>>495717
Ты тредом ошибся?
216 3495922
есть те кто с ноды на гошку перекатился?
сколько времени занял процесс переката?
217 3496012
Какие есть гайды/книжки по паттернам в голанке? Вот как head first patterns или банда четырех, только для голанка. Сейчас пришел писать на проект с голанком. Вижу, что многие на реддите пишут, что нахуй эти паттерны, в го нет ООП как в джаве и паттерны из жабы тащить сюда не стоит. Но в то же время у нас на работе один сенька постоянно носится с этими паттернами и в каждом код ревью попускает за то, что написано криво косо и без паттернов.
218 3496044
>>496012
Вот полезные для го паттерны:
https://github.com/tmrts/go-patterns
А джавахуйню пусть оставит себе, конечно.
Ещё могу посоветовать "100 ошибок go и как их избежать", полезно чтобы не писать криво-косо.
219 3496058
>>496044
Лол, по твоей ссылке литерали джавахуйня из книжки четырех. Половину этого говна даже в джаве выбросили и заменили на DI, в гошке так вообще все нахуй не надо.
220 3496177
>>495727

>То есть это специально так сделано, чтобы ты не объявлял переменные, даже через const?


Да.
221 3496199
>>496012
Ну самая база это конкарренси паттерны, это этот сайт https://go.dev/blog/pipelines или книжка concurrency in go.
И то и другое морально устарело, но для базы сойдет.
А так гоферы редко прям знают паттерны. Желательно знать структуру гошного проекта и кодстайл (effective go и гайд от убера).
Банда четырех спокойно на голанк портируется, можешь читнуть, сам будешь своего доморощенного патернорожденного сеньора попускать.
>>496058
Может и не надо, но тогда ты скорее всего будешь эти паттерны переизобретать по ходу дела.
222 3496211
>>488878
Да я уже техлид, прост немного заебало это все, ебучие технологии в кубере появляются быстрее чем новые фреймворки для яваскрипта

>>488895
Ничего интересного нет, то есть как и все - приедается. Надо походу в менеджеры уходить
223 3496213
>>496199

>книжка concurrency in go


Они написали целую КНИГУ про RWMutex? Хуясе инфоцигане 80 уровня.
224 3497265
Сап!
https://pastebin.com/1iHpuxRP
Есть простая структура User что реализует Writer и Reader, сначала создаю её как originalUser, инициализирую, записываю в только что созданный через os.Create файл с помощью io.Copy - всё отрабатывает как я и ожидал.
После создаю пустого User'а userFromFile, но теперь пытаюсь прочитать его io.Copy способом, но возникает проблема: если использовать тот же инстанс файла что бы создан os.Create - userFromFile с нулевыми значениями, а если закрыть файл и потом открыть его os.Open, то в userFromFile, как и ожидалось мной, лежит копия originalUser.
Почему? os.Create же создаёт файл с O_RDWR флагом, то есть с него можно и читать, и писать.
225 3497266
>>497265
Только что прочитал свой вопрос и пришла идея - а что если тупо при первой io.Copy, то есть записи в файл, каретка остаётся в конце файла, после записанного полезного текста, и уже при следующей попытки чтения, вместо начала файла io.Copy пытается прочитать с того самого места где и остановилась после записи, то есть в конце?
Ебать я даун если оно так...
226 3497267
>>497266
Так оно и есть...
Поставил offset в начало файла после записи и всё считало корректно. Какой же я даун.
227 3497915
Для чего можно использовать go?
228 3497922
>>497915
Docker, слышал про такую утилитку? У меня на раёне пацаны пользуются.
229 3497923
>>497922
Докер это большое исключение.
230 3497933
>>497915
Для перекладывания джейсонов
231 3497941
>>497933
На жс(нода) такое тоже можно делать,шах и мат
232 3497946
>>497941
Нодой не повыебываться тк это не currentThing
233 3497949
>>497946
Шта?
234 3497950
>>497933
В го 1.26 будет новый крутой пакет для работы с ними,кстати
235 3497954
>>497950
Мб они аналог джава дока замутят чтобы я наводясь на метод сразу видел секции с описанием параметров и возвращаемого значения, а не лез внутрь надеясь что создатель добавил это в свою груду неструктурированного текста над методом?
236 3497958
>>497923
А кубер это какого размера исключение?
237 3497963
55225651.png95 Кб, 273x274
238 3497994
239 3498031
>>497963
Это мешает перекладывать джейсоны? Джейсоны это ващета подмножество жс.
240 3498086
>>498031

>Это мешает перекладывать джейсоны?


Да, потому что надо с датами работать. Как из жсонов, так и снаружи их.
241 3498097
>>498086
В жисоне даты стандартным способом сериализуются
JSON.stringify(new Date)
'"2025-07-14T05:32:03.371Z"'

Никогда не видел чтобы были даты типа "0"
242 3498236
>>498097

>В жисоне даты стандартным способом сериализуются


Ровно до тех пор, пока кто-нибудь простую строку не положит.

>Никогда не видел чтобы были даты типа "0"


Тебя ждёт много открытий в этом мире.
243 3498284
>>498236

>Ровно до тех пор, пока кто-нибудь простую строку не положит.


Просто валилируешь данные и шлёшь нахуй, тех кто не в стандартном формате шлёт.
Зуммеры вначале пиздели какой XML """тяжёлый""" , а потом начали тащить в JSON всё из XML.
244 3498309
>>497954
>>498284
а теги для структур для этого создали?
245 3500039
>>498309
Он не знает.
246 3500968
>>500039
А кто знает?
247 3501389
Народ, если у кого есть, киньте, плиз, ссылку на почитать про то, что происходит при блокирующей операции в рамках GMP модели. И хорошо бы ещё, чтобы про саму модель там было по-подробнее написано.
249 3501715
>>500968
Теги структур создали для рефлексии, чтобы привнести элементы императивного программирования.
250 3501717
*перепутал, т.е. наоборот - декларативного
251 3501743
>>497933
Но джава лучше же для этого? Как можно писать тяжёлый продукт без ООП?
UcVn-QxxSdk.jpg62 Кб, 604x430
252 3501772
За 10 лет не исправлено, вы угораете? https://github.com/golang/go/issues/9519
253 3501775
>>501772
Через 10 лет пофиксят
254 3501788
>>501743
В чем тяжесть?
255 3501842
>>501743

>Но джава лучше же для этого?


Джава хуже для всего.

>Как можно писать тяжёлый продукт без ООП?


Руками по клавиатуре.
256 3501915
>>501772
Всё-всё, пофиксил https://go.dev/play/p/xQTf-fwkE7G
257 3501917
>>501842
почему джава хуже?
я думал го предназначен для всякой серверной ебалы и прочего девопсинга, а не для сложной бизнес логики
image.png4 Кб, 287x120
258 3501925
Что это за хуйня, вы тут ебанутые что ли все? Кому в голову пришло, что использовать бектики не подвергающиеся интелисенсу и линтингу - это охуенная идея? Неужели это реально показалось лучшим вариантом чем чего-то вроде #json()/@json()?
259 3501941
>>501925

>не подвергающиеся интелисенсу и линтингу


А что мешает?
260 3501943
>>501941
Вы мне скажите. У меня в вскоде стоит официальный пакет который никаких подсказок для тегов не имеет.
261 3501946
>>501943
Вскод хуйня. В голэнде у меня в тегах всё отлично работает.
262 3501950
>>501943
А ты хочешь автодополнение по всем возможным тегам?
263 3501959
>>501950
Я не знаю их всех, но какой-нибудь json или validate выглядят довольно стандартными чтобы их можно было дополнять. Да что там, я только что минут 20 ебался с проблемой которая была вызвана тем, что я лишний пробел в этих тегах поставил. Это ли не тупость?
264 3501981
>>501917

>для всякой серверной ебалы и прочего девопсинга, а не для сложной бизнес логики


И в чём противоречие? Могут быть признаки подходящести Джава для проекта в неких случаях, но эти случаи не раскрываются фразой "сложная бизнес логика".
265 3502038
>>501917
У нас на проекте сложная бизнес-логика, b2b с паутиной трёхсторонних договоров, всех нужно в жопу поцеловать. Гошка как раз оказалась заебись, новые хотелки реализуются за неделю. Да, костыли и да, воняет хуже двадцатилетней джавы, но кабаны довольны скоростью, а рефачить это говно на удивление не так и сложно, оно всё простое как палка.
image.png13 Кб, 449x131
266 3502042
>>501943
У тебя что-то не то с вскодом. Всё в нём работает.
267 3502063
>>502038
Двачую. На гошке просто берешь и просто в лоб решаешь задачу, без десяти слоев абстракций над абстракциями. Поменяется логика - перепишем код, он простой и его просто понять. Поэтому го так любят опытные разработчики, пока мартышки дрочат на солид и патерны в джаве. Я в го пришел из сишарпа, с ужасом вспоминаю медиатр и ебаный ефкор.
268 3502115
>>502063
А надо было на жс
269 3502125
>>502115
JS надо запретить использовать везде кроме фронта.
270 3502145
>>501915
Миша, давай по-новой, все хуйня. Во-первых не считалось, во-вторых нет неймспейса, если его добавить.

https://go.dev/play/p/qBUb4gemPZR
271 3502218
Нужны ли enum и option type?
Не раз встречал просьбы добавить это
272 3502269
>>502145
Подозрительно, подозрительно..
Ведь у тебя и версия теряется в процессе перекодирования.
273 3502304
>>502269
А почему у меня, если я в твой пример добавил версию? А не работает потому-что либа кривая и поведение маршалинга и анмаршалинга разные.

Мне вот нужно взаимодействовать с легаси ide редактором, который пишет данные в определенном формате и я могу это распарсить, но записать в таком же виде не могу. Теперь придется либо на питоне делать, либо либу допиливать. Суперские новости для моего первого проекта на го.
274 3502391
>>502218
enum конечно нужен
Option скорее как класс в стандартной библиотеке можно добавить
275 3502420
>>502391
Теме enum уже куча лет,но реализовывать никто не хочет
276 3502431
>>502304
Я не знаю. Ты реально думаешь, что я умею программировать?
277 3502435
>>502420
Причем в C оно есть
278 3502672
>>502435
Даже в php есть
279 3502726
На кой ляд нужны эти ваши енумы? Нашли из-за чего переживать. Вот реально чего не хватает, так это низкоуровневых манипуляций. Очень нужная фича для пиздец нагруженных приложений.
280 3502744
>>502435
По сути нету в си энумов (таких как в C++), потому что нет неймспейса для значений. В го iota по сути тоже самое делает что enum в си
281 3502829
>>502726
Спрос есть.предложения нет
282 3502847
>>502726

>низкоуровневых манипуляций


Каких например?

>>502726

>Очень нужная фича для пиздец нагруженных приложений


Обычно голанка достаточно. Всякие там unsafe и мемори арены есть. Если нужно какое-то low latency, то наверное стоит в сторону rust смотреть и другие языки без gc.
283 3502930
>>502063

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


А что тебе мешает так же делать на других языках?
284 3502932
>>502930
двачую,на жс это все тоже можно быстро накидать
285 3503035
>>502932
На жс быстренько можно только говна пожрать. Этот кал нихуя не простой и не быстрый в разработке, когда речь идёт о бэке, поддержке и рефакторинге. >>497963
286 3503064
>>502391

>Option скорее как класс в стандартной библиотеке можно добавить


Option без map не нужен, а map из-за ущербных дженериков.
287 3503070
>>503064
Какую тему не подними,везде в чем то го ущербен лол.
Но хейтят жс
288 3503099
>>503070
Но ведь хейтят пхп
289 3503106
>>503099
В своей нише пхп как джава будет жить ещё очень долго
290 3503110
>>503070
Так хейтят языки безработные сычужки, которые просто в вузике учили другой язык. А го нигде не учат, поэтому здесь целый зоопарк таких.
291 3503112
>>503110
Но го реально огрызок
292 3503152
>>503110
нас учили ГОвну я его обожаю но работаю на джаве
мужики я обязательно перекачусь в ГОвно дождитесь меня
293 3503452
>>503064

>Option без map не нужен


чо за мап и почему его нельзя в стд либе реализовать?
294 3503497
>>503452
https://ru.m.wikipedia.org/wiki/Map_(%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5)

А нельзя её реализовать из-за ограничений дженериков. Вернее можно как отдельную функцию, а не метод, но это настолько убого, что даже авторы го решили не добавлять это в стандартную библиотеку.
295 3503509
>>503497
Даже в ванильном жс это есть. ЛОЛ
296 3503522
>>503070

>Какую тему не подними,везде в чем то го ущербен лол.


Речь идёт о том, что если уж вы тащите концепции either monad из ФП, то обеспечьте и соответвующие выразительные средства в языке. А то хотим функции высшего порядка в языке с выразительностью кобола.
297 3503524
>>503509
Ничего себе даже! Да ЖС по количеству языковых фич спорит с питоном, кто больше сахара насыпет.
298 3503529
>>503524
Удобно. А что же го?Трясуться добавить чего лишнего, а то скорость компиляции и выполнения просядет
299 3503613
>>503509
В ЖС вообще любое говно есть, поэтому он и сам говно.
300 3503616
>>503613
А если взять TS то фичей еще больше
301 3503617
>>503497

> А нельзя её реализовать из-за ограничений дженериков


> как метод


не пон, а что ограничивает?
302 3503699
>>503064
И reduce тоже нет
303 3503887
>>503617

>не пон, а что ограничивает?


В методах с ресивером дженерики нельзя добавлять кроме дженерикв свмого ресивера. Т.е. такое реализовать нельзя

func (o Optional[T]) Map[NT any](mapper func(T) NT) Optional{NT}

можно без ресивера

func Map[T any, NT any](o Optional[T], mapper func(T) NT) Optional{NT}

Можно и с этим жить, но комбинировать несколько map не удобно, особенно со всякими filer/consume.
304 3503889
>>503699
А чо там редьюсить в Optional? Это же максимум одно значение? GetOrDefault() вполне его заменит.
305 3503896
>>503529

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


В языке важен баланс.

Если пихать всё, то получится шарп или питон, где на любой чих есть 3-5 способов это сделать. И согда на проекте возникает зоопарк кто-то

> var evenNumbers = numbers.Where(n => n % 2 == 0).ToList();


кто-то

> foreach (int number in numbers)


> {


> if (number % 2 == 0)


> {


evenNumbers.Add(number);

> }


>}


а кто-то бывший админ и пишет

> var evenNumbers = from n in numbers


> where n % == 0


> select n;



А потом приходит джун на проект и пытается во всем этом разобраться.

С другой стороны если для удаления 1 элемента из середины списка надо писать for, то это тоже перебор.
306 3503971
>>503896

> где на любой чих есть 3-5 способов это сделать.


А не надо так делать,надо добавлять фишки по одной.Но в го и так не спешат делать
307 3504214
>>503971

>А не надо так делать,надо добавлять фишки по одной.


А их и не добавляли сразу просто в какой-то момент до них дошло, что sql синтаксис очень ограничен.
308 3504226
>>504214
ШТА?
309 3504341
Сап, антуаны.
Я писал раньше на питухоне и рубях всякий серверный бэкенд (суммарно чуть меньше 2 лет).

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

Посоветуй, как правильно двигаться в го?
Я прошёлся по go.dev/tour, примерно понял синтаксис (очень слабо).

Сейчас думаю накостылить сервис на Gin какой-нибудь тестовый

Посоветуйте, как вкатиться с учётом того, что опыт только динамического петуха. Может, материалы какие или есть специально для такого подхода туторы?
Англ у меня ок, можно (и даже лучше) зарубежные источники

За помощь - с меня, как и полагается, нихуя
Без имени.jpg54 Кб, 400x525
310 3504347
>>504341
Мне зашла книга со скрина. Но я ее еще не дочитал, уже пошел писать маленькие проекты.
311 3504350
>>504341

>Gin


Не нужОн
312 3504416
мужики я не выдержал качаю goland для себя я не могу у меня тяга у меня зависимость
мимо джава раб опыт работы 1.5 месяца зп 50к
313 3504431
>>504416
Качать будешь,когда опыта будет 1.5 года
314 3504435
>>504431
всё так, не спорю, но мне просто ПРИЯТНО писать на говне
на работе пиздец я ебал там такой пиздец
public abstract class GenericGisUiPrepareExportDataThread<ItemKey extends GenericGisObjectKey, GisExportData extends GenericGisResultObjectData<ItemKey> & GisRequestData<GisExportResultData,ItemKey>, GisExportResultData extends GenericGisResultObjectData<ItemKey>, GridItem extends GenericGisExportGridItem<ItemKey,GisExportData,GisExportResultData>, DataProviderType extends DataProvider<GridItem,SerializablePredicate<GridItem>>> implements Runnable

повторюсь работаю всего 1.5 месяца, первая работа, ебало моё представляете? я вот в ахуях
но похуй гребу + учу угу + коплю деньги моя зп 50к
315 3504478
>>504435
А что на го так нельзя написать?
316 3504523
>>504478
роб пайк сказал лично ебало снесёт каждому кто подобное напишет
317 3505051
>>504523
А он не говорил, снесет ли ебало тому, кто в стандартной либе простыни пишет и не придерживается SRP?
318 3505069
>>505051

>SRP


джунишка-вкатунишка, спокнись
всем похуй на солид
319 3505088
>>505051
я ебу что такое srp?
ради собеса запомнил что КЛАСС ДОЛЖЕН ИМЕТЬ ОДНУ ПРИЧИНУ ДЛЯ ИЗМЕНЕНИЯ
я честно не понимаю что это значит и интерпретирую как все, т.е.:
у класса должна быть одна зона ответственности
320 3505146
>>505088
Объект должен иметь одно назначение, одного заказчика, один смысл для существования. Пример из жизни: мы собираем и кидаем одному из клиентов сложный отчётец. Другой узнал и захотел такой же. Я заставил коллегу полностью дуплицировать всю логику, и домен, и юзкейс. Не прошло и недели после раскатки, как от второго пошли хотелки что-то поменять в этом отчёте.
321 3505160
>>505146
Опытные разработчики всегда копируют код отчетов, интеграций и подобной залупы. Завтра логика поменяется, ты полезешь править один отчет и сломаешь к хуям еще пять.
Солид придумали долбоебы, которые сами код не писали, это инфоцигане 80 уровня.
322 3505258
>>505160
Чел, но ты буквально SRP процитировал в той версии что у Дяди Боба

https://blog.cleancoder.com/uncle-bob/2014/05/08/SingleReponsibilityPrinciple.html

> Gather together the things that change for the same reasons. Separate those things that change for different reasons.



>This principle is about people.



Это не Дядя Боб долбаеб, а школьники, которые считают что SRP это про то сколько методов у класса.
323 3505325

> defers in this range loop won't run unless the channel gets closed (SA9001)


сука, сахарок потёк
324 3505691

>Ну вот, наконец-то. Ты отвлёкся от фронтенд-танцев с fetch и вспомнил, что Go существует, и у него нет даже нормального map() для слайсов. Всё правильно, Go — это язык, который говорит: “Сделай руками, как в 70-х, и не ной.”

325 3505720
>>505691
У тебя там новый фреймворк вышел, не отвлекайся. В понедельник будет еще один, не успеешь изучить за три дня - полетишь нахуй с галеры.
326 3505725
>>505720
А, ну , давай название
327 3505731
>>505691
Каково тебе осознавать, что го такой ущербный и примитивный, но платят гоферам всё равно больше, чем тебе? (если у тебя вообще работа есть, конечно)
328 3505738
>>505731
Ну все правильно,за ущербность языка расплачиваются кодеры,городя велосипеды на недостающие фичи
329 3505750
>>505738
То есть им платят больше, а они копипастят бойлерплейт и списывают на это десятки часов.
330 3505759
>>504435
Типа того?

type GenericGisUiPrepareExportDataThread[
ItemKey ~GenericGisObjectKey,
GisExportData ~GenericGisResultObjectData[ItemKey] | ~GisRequestData[GisExportResultData,ItemKey],
GisExportResultData ~GenericGisResultObjectData[ItemKey],
GridItem ~GenericGisExportGridItem[ItemKey,GisExportData,GisExportResultData],
DataProviderType ~DataProvider[GridItem,SerializablePredicate[GridItem]]] interface {
Run()
}
331 3505808
>>504435
опача, еще один гисы пилит
332 3505981
>>505808
Уже трое выходит, я электронными путевыми листами занимаюсь.
333 3506002
>>505981
Java тред в другом месте
334 3506029
>>506002
Спок, мы всё на говняшке пишем.
335 3506408

>Создали пакеты для работы со срезами и картами,по сути сахар над цикломи с дженериками


Итс революшн!

>Но нет map, reduce, filter


Нах не нужен!
336 3506426
>>506408

>map, reduce, filter


Пусть это нечитабельное говно остается в твоем сраном джаваскрипте. Голенг - язык для профессионалов, которым никому ничего доказывать не надо. Пока джаваскрипт макаки выебываются, кто напишет длиннее соплю из монад, на голенге пишут простой код, который просто решает задачу.
337 3506427
>>506426
А говорили,что го создан для макак.Так по факту в нем ничего нет
338 3506433
>>506427
Для макак сделали сишарп, там даже на рекламных слайдах одни паджиты. Голенг для тех, кто понимает что пишет и зачем.
339 3506592
>>506433

>там даже на рекламных слайдах одни паджиты


Ты нацист?
340 3506738
>>506592
Поработаешь на международном проекте – сам зиганёшься.
341 3506834
>>506426
Этого нет,а пакет с методами для срезов и карт сделали.А почему?
342 3506958
>>505759
Работаю сейчас на голанк проекте с примерно такой хуйней, которую ты тут написал.
Тимлид зачем-то решил, что надо нахуярить десяток слоев абстракций, нахуя пока не понятно, но видимо задел на будущее. Хотя вполне можно было обойтись обычным контроллер-сервис-репозиторий, но он решил сервисный слой еще на 3 слоя разбить.
343 3506981
>>506958
Все просто: тимлид - идиот.
344 3506985
>>506981
Когда в джаве пишут AbstractFactoryBean то это джава такая. Если в го пишут ZalupaFactoryProvider то тимлид мудак.

Смотрите не перепутайте.
345 3507027
>>506958
блять, надеюсь ты это не про меня
занимаюсь тем же, только я не тимлид
346 3507035
>>506958
Тимлид раньше писал на джаве?
347 3507040
>>505808
какого хуя у меня INT002029 ошибка при загрузки файла в гис? м бля? в журнале ошибка не описана
348 3507054
>>507040
заведи баг в жире, гляну в обед
349 3507157
>>506985

>AbstractFactoryBean


Так писали 30 лет назад. Погугли, в каком году вышла книжка про паттерны от банды четырех. В джаве эта хуйня до сих пор жива потому, что на джаве написаны гигатонны легаси говна.
У голанга другая философия родом из си. Тут просто берут и просто в лоб решают задачу, а солидом вытирают задницу.
350 3507173
Коллеги, подскажите на каком уровне го разработчик должен владеть кафкой?
Обязан ли я знать все ее настройки, тонкости реализации и то как оно под капотом устроено или оно в работе нахуй не нужно?
351 3507174
>>507173
В работе не нужно, настройкой кафки занимаются девопсы. На собесах - как повезет.
352 3507175
>>507173
Что значит доооооолжен владеть блять? Ты дооооооолжен владеть ровно на том уровне, который требуется на проекте. Если проект требует скурпулёзного знания каждой миллипиздрюлины, то будь добр учи каждую миллипиздрюлину. Если проект НЕ требует таких знаний, то значит и не нужно. Но в твоих же интересах знать БОЛЬШЕ. Что может самое страшное произойти если не выучишь? Тебе дадут некое задание, которое ты не выполнишь и начнёшь оправдываться, но это никого не ебёт.
353 3507203
Есть тут кто-нибудь, кто в Го вкатился с чистого Си? Легкий был перекат? embedded, esp32
354 3507229
>>507203
в россии го это только бэк, готов учить как эффективно джсончики по микросервисам раскладывать?
355 3507255
Правильно ли я понял, что в го сейчас вообще не вкатиться с нуля? Раньше было два варианта: либо ты студентик и пробиваешься на стажку, либл крутишь опыт. Но в первом случае ты хуй попадёшь, потому что самих стажировок на го мало и нет смысла подаваться если ты не из топ 3 вуза, а во втором случае просто попросят трудовую и пиздец. Вкат закрыт, получается?
356 3507286
>>507173
На уровне достаточном чтобы в неё пукнуть
357 3507663
Есть какой-то способ задать глобальный recover? Так чтобы он срабатывал при панике в любой горутине.
358 3507689
>>507255
Да на всех стеках везде стажировки это 0,1% всех вакансий. Ты будешь искать работу до пенсии, если откликаться только на стажировку. Стажировки есть только в очень узких нишах, где присутствует кадровый голод. Какой-нибудь там блять "abap-программист". Golang таковой не является. Ни С++, ни C#, ни Java, ни Python, ни ещё какой известный язык не является узкой нишей. Узкой нишей является Julia, возможно какой-нибудь R или Tableau. Какой нахуй смысл учить людей golang с нуля, если на рынке и так уже дохера готовых специалистов?
359 3507834
>>507663
Зачем? Паника - это не проброс эксепшена. Это финальный пиздец в твоем коде, после которого все умирает нахуй.
🤷♂️.jpg157 Кб, 1440x1440
360 3507896

> defer вызыввается только в конце выполнения функции, а не if, while, loop



Вы ебанутые? И что мне всё в анонимные функции оборачивать чтобы перед каждым continue не писать по 5 штук .close?
361 3508059
>>507896
Голенг не для тебя, оставайся на сишарпе.
362 3508090
>>507896
А что ты там закрывать собрался на каждой итерации? Ты что, ебанутый?
363 3508109
>>507834
Я не спрашивал что такое паника, я спрашивал как сделать.
364 3508110
>>508109
Пошел нахуй.
365 3508163
>>508090
В цикле открываю amqp соединение и читаю сообщение, если соединение обрывается, то в конце цикла жду по таймауту и переподключаюсь
Выхожу из из цикла в 5 разных местах, ебало представили каждый раз писать перед continue conn.Close, channel.Close??
366 3508205
>>508163
Сделай, чтобы выход из цикла был выходом из функции, тогда и деферы сработают как надо.
367 3508257
>>508205
это в изначальном посте и написал, и выглядит как ебейший костыль

>>507896

> И что мне всё в анонимные функции оборачивать

368 3508310
>>507834

> после которого все умирает нахуй.


Программист Аэрофлота, ты?
369 3508391
>>508110
Мудило, если не знаешь можно просто промолчать. Совсем не обязательно высирать своё

>НИНУЖНО

370 3508579
>>507157

>Тут просто берут и просто в лоб решают задачу, а солидом вытирают задницу


Ты не понимаешь солид. Там только л можно выкинуть, т.к. это ближе к ооп полиморфизму, остальные принципы так же можно и нужно применять и в го.
371 3508659
>>508163
Ты неправильно работаешь с amqp.
372 3508674
>>508579
К наследованию это говно ближе. А лучше расскажи, как ты применяешь в гошке опен клоз, как понимаешь сингл респонсибилити и реально ли полезен интерфейс сегрегейшн.
373 3508711
>>508659
слушаю твои предложения как написать простой handler который подключается к брокеру и слушает из очереди сообщения
соединение\канал теряется => нужно пытаться переподключиться
374 3508721
>>508711
Очевидно, разделить логику подключения и логику обработки. Вычитываешь данные, оборвался конекшен - верни err и пусть там наверху разбираются и переподключаются.
Голенг твой первый язык, что ли?
375 3508751
>>508721

> Ты не правильно работаешь с amqp


> Описывает тоже самое что я делаю, просто размазал логику из 10 строчек на 3 функции, о чем я и написал в самом первом посте



Вы меня специально бесите?
376 3508782
>>508751
Шиз, таблетки.
377 3508800
>>508751

>размазал логику из 10 строчек на 3 функции


А в чём собственно проблема?
378 3508849
>>508800
что по другому сделать НЕЛЬЗЯ
379 3508866
>>508711
Почему у тебя хендлер подключается к брокеру? Ты ебанутый?
Может у тебя хендлер ещё и в бд пишет?
Какова хуя такие еюанаты в мою кошечку выкатились
380 3508870
>>508866
воняешь джавой
381 3508885
>>508866
у меня хэндлер всё что делает это подключается к брокеру и отправляет данные в интерфейс сервиса, в котором и находиться вся бизнес логика
382 3508891
и это не http хэндлер

у нас архитектура примерно такая внешний мир => handler => service => repository(infrastructure)
383 3509082
>>507896
Погоди, то есть если в цикле открыть файл и дефером закрыть он не закроется в конце цикла???

ААХАХАХАХ ЧТОООООО
384 3509385
>>509082
Открываем оф доку и читаем
A "defer" statement invokes a function whose execution is deferred to the moment the surrounding function returns, either because the surrounding function executed a return statement, reached the end of its function body, or because the corresponding goroutine is panicking.
как и во многих других ЯП, единственное, в свифте и зиге дефер привязывается к области видимости, а не к функции
385 3509403
>>509385

>как и во многих других ЯП


ни в одном языке деструктор\дефер\закрытие не прикручивается к завершению функцию, а не области видимости
386 3509416
>>509403
Голенг особенный, если ты еще не понял.
387 3509910
>>508885
Какова хуя хендлер ответственный за подключения? Суть хендлера получить готовый проверенный конекшен и слушать с него. А не админить всю эту залупу с конектамт и таймаутами
388 3509946
>>509910
Создать коннекшен в main(), прокинуть в хендлер через DI в виде репозитория - норм?
389 3509999
>>509910

>Суть хендлера


хорошо, пусть у твоего хэндлера будет такая суть, пусть вобще всё что угодно будет, ко мне это какое отношение имеет?
390 3510001
>>509910
Джавист, ты если будешь жонглировать ответственностью между компонентами суть не поменяется
391 3510005
>>509910

>получить готовый проверенный конекшен


поздравляю, вернусь обратно к >>507896
392 3510019
>>510005
https://github.com/bomjdev/yetanother/blob/main/mq/connect.go
чекай код обертки из личной библиотеки - можешь себе так же сделать мне поебать
393 3510022
>>510019
это пиздец чел)

> panic(err)


хочешь чтобы меня уволили нахуй?)
394 3510047
>>510022
во первых ты из тех долбоебов которые визжат что паниками нельзя пользоваться?
во вторых я что ли говорю в тупую скопипастить? я показал как лично я делаю - наоборот свою реализацию поощряю а то останешься тупым быдлом копипастя из гитхаба, стековерфлоу и чатгпт
395 3510050
>>510047

>ты из тех долбоебов которые визжат что паниками нельзя пользоваться?


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

>я что ли говорю в тупую скопипастить?


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

Почему здесь находятся те, кто коннекты внутри хендлера прописывает? Мало того, так еще и спорят же, ебанутые, с тем что это неправильно и так не делают. Ебало представили — на каждый реквест к базе коннектится? Не, это тролли 100%, не могут настолько идиоты существовать.

>>510022
Использование паник/os.Exit() на самом нижнем уровне аппа это более чем нормальная практике и нужна чтобы например не стартовать процесс/воркер, если не удалось инциализовать какую то критикал штуку. Открывай любую популярную либу/пример сервиса и убеждайся в этом.
397 3510557
>>510548

> на каждый реквест к базе коннектится


>>508891

> это не http хэндлер


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

>Использование паник/os.Exit() на самом нижнем уровне аппа это более чем нормальная практике


АХАХАХАХААХАХ

> не стартовать процесс/воркер, если не удалось инциализовать какую то критикал штуку


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

>Открывай любую популярную либу/пример сервиса и убеждайся в этом.


Ну покажи мне пример такой либы, где у тебя на нижнем уровне приложение ПАНИКУЕТ
398 3510559
>>509999
>>510001
>>510005
>>510022
Я запрещаю вам писать код. Укатывайтесь из айтишечки

>panic(err)


Вообще не понял доеба. Нахуя мне поднятый сервис/воркер, если он не смог подрубится к источнику данных и не может выполнять свои функции. Лучше я на деплое упаду и пойду искать причину падения, чем у меня в продакшене начнет что то проебется и в очередь толпа набежит
399 3510564
>>510559
блять еще один)

>Нахуя мне поднятый сервис/воркер, если он не смог подрубится к источнику данных и не может выполнять свои функции


Ну правильно, возникла проблема в сети на 5 секунд, весь прод падает, нахуй переподключаться

>Лучше я на деплое упаду и пойду искать причину падения, чем у меня в продакшене начнет что то проебется и в очередь толпа набежит


Да, а паники на проде ловить если что будет вобще кайф ловить
400 3510572
>>510564
Ты тролль или как? Ты понимаешь значение слова "Деплой"

энивей, детект долбаеба, который думает что паника в рантайме == падение сервиса. Тебе разработчики нахуя рекавер дали? У тебя если конекшен отъебнуло, все равно реконектится надо

больше кормить не буду
401 3510580
>>510572

>который думает что паника в рантайме == падение сервиса


ты код то глядел хоть долбоёб? он в горутине паникует, без каких либо рекаверов

> Тебе разработчики нахуя рекавер дали?


Чтобы приложение не падало в критических случаях, а не потому что Пуков не осилил обработку ошибок
Не должно у тебя приложение паниковать при подключениям к чему либо

>У тебя если конекшен отъебнуло, все равно реконектится надо


Ахуенно, и как из этого следует что у тебя приложение паникует, а не переподключается?
402 3510591
жду примеров когда os.Exit или паника вне мейна это ахуенная идея без этого лучше даже не отвечать мне
403 3510594
>>510580

>Не должно у тебя приложение паниковать при подключениям к чему либо


Отлично. Ты деплоишь сервис, который к бд не подруюился, не запаниковал. Поднялся. Он тебе зелёненьким на дешборде отсвечивает, все в порядке. Вот только юзеры почему то авторизоваться не могут.
Боже, с какими долбаебами я на одном языке пишу, лишь бы с такими в одной команде не оказаться
406 3510614
>>510594

>сервис, который к бд не подруюился


>Он тебе зелёненьким на дешборде отсвечивает


в голове не возникает проблема что при проебе подключений к бд сервис должен что то в дашбор отправлять?

> Вот только юзеры почему то авторизоваться не могут.


и у вас дашборда нихуя про это не скажет? вы вобще как следите за работой сервисов кроме как галочки работе или упал?

>Ты деплоишь сервис


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

У тебя приложение должно пытаться переподключиться, это лучше чем мертвое приложение, а то что ты не можешь узнать статус сервиса это определенно не вина паник

>>510609
>>510609

> func main


> func main


> tests


> examples


> validators


Ты бы хоть вчитывался
407 3510620
хотя кому я говорю, дайте угадаю в докере restart: on-failure запихнули и пошли спать спокойно?
408 3510623
>>510614
В чем проблема при отъебе конекшена запаниковать и подняться до ближайшего рекавера и там обработать?
Ещё раз, дебик, где я тебе сказал что падать надо в рантайме ? В рантайме ты ловишь рекавером и обрабатываешь

У k8s 1k+ вызова паник, ты бы хоть чекнул
https://github.com/kubernetes/kubernetes/blob/master/pkg/apis/rbac/v1/helpers.go#L64
Вот, специально для немощных
409 3510627
>>510623

>В чем проблема при отъебе конекшена запаниковать и подняться до ближайшего рекавера и там обработать?


В том что паника не для этого создана, для проброса ОШИБОК есть ERROR

>>510623

>https://github.com/kubernetes/kubernetes/blob/master/pkg/apis/rbac/v1/helpers.go#L64


> RuleOrDie()


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

Так что этот пример вобще никак не противоречит тому что я сказал, если ты будешь паники в таком же ключе делать я не против
410 3510629
>>510614

>Надеюсь догадался между сервисами такое отношение порядка не выстраивать?


Про initContainers ты конечно же не слышал. В вашей конторке все ещё башиком деплоят ??
411 3510630
>>510629
только перфокартами
412 3510645
>>510630
Уважаемо. Пенсионер в треде
413 3510650
>>510557
Ору с этого бестолкового сына шлюхи.

>Ахуенно ты на нижнем уровне решил что кто то там сверху не будет воркер стартовать



У тебя в мэйне не получилось подключиться к БД или прочитать критикал данные из конфига которые нужны для инициализации остальных компонент приложения. Нормальные люди в этом случае пишут os.Exit() или panic(), и приложение не запускается.

Что предлагаешь делать ты, малолетний хуесос, не имеющий отношения к программированию?
414 3510659
>>510650

> нижний уровень


> main


чел...

Нормальные люди и вправду делают это всё в main, только никто main низкоуровневым не называет, main это буквально самый высокий уровень, который всё запускает
image.png508 Кб, 1280x1149
415 3510686
У кого какие зепки?
Начну с себя, 300к дс2 миддл+
4 года опыта (выкатился из фронта, на го 3 года)

Интересно какие зепки у синек в бигтехе
416 3510695
>>510614

>У тебя приложение должно пытаться переподключиться, это лучше чем мертвое приложение, а то что ты не можешь узнать статус сервиса это определенно не вина паник



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

То что у тебя приложение при запуске не смогло подключиться к БД(например) и не запустилось, не означает что приложение не будет пытаться перезапускаться, клоун.

У тебя в ci/cd настроены автоматические редеплои на такие штуки(если ты конечно не полный мудак, в чем есть сомнение)
Более того в рамках условного подключения к БД у тебя могут быть ретраи на коннекты в рамках самого аппа - не подключился - попробовал еще N раз - все еще не получилось - os.Exit() - запускается редеплой. Например, kuber по дефолту при CrashLoopBackOff редеплоит под.

В это же время чел который это деплоил видит проблму, понимает что дело в неудачных коннектах к БД и идет к инфре/dbaas. Вот так выглядит нормальный цикл деплоя и паники/экзиты при запуске здесь более чем уместны и так делают все.
417 3510716
>>510695

> У тебя в ci/cd настроены автоматические редеплои на такие штуки


литературно >>510620

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



> приложение не будет пытаться перезапускаться, клоун


приложение сами себя перезапускают?...

> у тебя могут быть ретраи на коннекты в рамках самого аппа - не подключился - попробовал еще N раз - все еще не получилось - os.Exit() - запускается редеплой


Часть логики у нас в ci cd, часть в main, хорошая практика

> В это же время чел который это деплоил видит проблму, понимает что дело в неудачных коннектах к БД и идет к инфре/dbaas.


вот каким образом это в итоге противоречит тому что я написал?

> паники/экзиты при запуске здесь более чем уместны


и где я говорил обратное?
уместны если у тебя приложение находиться в критическом состоянии в котором оно не может дальше функционировать, то что ты не смог к бд подключиться, а вместо переподключение, ты просто в докере бесконечно крутишься не уместно
418 3510730
>>510716

> добавить в мейн логику переподключения?


>у тебя могут быть ретраи на коннекты в рамках самого аппа - не подключился - попробовал еще N раз - все еще не получилось - os.Exit() - запускается редеплой.



Ебанько не перестает под себя серить.
И как ты реализуешь логику переподключения полностью на стороне аппа? Бесконечно переподключаться к бд, при этом само приложение у тебя будет жить?)

> да ну нах, ci cd сам всё подымет, чо мне утруждать себя



>Шиз буквально отрицает общепринятый подход с редеплоем пода



>вот каким образом это в итоге противоречит тому что я написал?



Тем, что ты сначала визжал про то что нельзя паниковать. Когда в итоге выяснилось что можно, ты начал визжать про то что редеплой на cicd это ПЛОХАЯ ПРАКТИКА.

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



У тебя при этом живет рабочий релиз и доступность аппа для пользователя сохраняется.
Ты буквально предлагаешь: давайте не делать редеплой на cicd упавшего пода, а переложим логику реконнекта в main, чтобы у нас бесконечно ретраился конект к БД, приложение не падало и тем самым крутился по факту нерабочий релиз.

Ты же просто идиот клинический.
419 3510741
>>510730
шиз, таблетки
ты там от тряски совсем читать рузучился, или просто начал сам с собой разговаривать?

> нельзя паниковать


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

> не нужно делать редеплой


нужно, если у тебя приложение упало\завершилось
приложение завершается в критической ситуации из которой оно не может восстановиться самостоятельно

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

> Бесконечно переподключаться к бд, при этом само приложение у тебя будет жить?)


именно так

если в ответ опять какой то шизойдный бред из свои головы, а не на мои посты, то максимум что отвечу "шиз таблетки"
420 3510745
>>510716

>Часть логики у нас в ci cd, часть в main, хорошая практика



Так и за что ты тогда усираешься?
Да, это хорошая практика. И практика с просто ретраями в кубере все еще хорошая. Почему? Потому что твои 5 ретраев коннекта в аппе к БД как правило сфейлятся в 99% случаев, потому что в основном у тебя такие проблемы возникают в случае какой-то инфровой хуйни, которую бесполезно ретраить.
А пытающийся подняться под в кубере после рестартов это не та проблема, которую надо бежать и чинить. Ну сделал ты ретраи в аппе - у тебя приложуха будет падать не сразу, но все еще падать - и сразу рестартиться, просто немного реже.

Это просто заеб который нет смысла реализовывать. В твоем мейне у тебя может быть 30 must-подключений к разным залупам, и еще 10 чтений каких нибудь must-конфигов. Все это ты предлагаешь обкладывать ретраями? За это время можно тасок из бэклога лучше поделать.
421 3510756
>>510741

>> Бесконечно переподключаться к бд, при этом само приложение у тебя будет жить?)


>именно так



Ну поздравляю, ебанат, лови сптху, что у тебя юзеры на проде в лк не могут зайти, потому что у тебя ручка которая ходит в бд серит 500ками.
422 3510768
>>510756
крутись в мейне тогда, мне похуй
мне тебе как маленькому каждый шаг нужно показывать?

>>510745

>проблемы возникают в случае какой-то инфровой хуйни, которую бесполезно ретраить


в такой ситуации вобще похуям где крутиться
все еще единственная проблема что если у вас в сервисах отъебывает обязательно соединение, то вы это по только по 500, или логам, или статусу краша контейнера понимаете, если бы у вас эта проблема была решена, крутиться в мейне было бы наиболее удобным решением
423 3510780
Я всё ещё не понимаю. Нахуя крутить ретраи в мейне, а не в кубере. Если с отъебнувшис конектом у тебя все равно аппка не выполняет свои функциональные обязанности и с очереди нихуя не читает.
424 3510791

>>>510780


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

ты вот в хэндлеры\репозитории бизнес логику не тащишь? ведь в некоторых случаях тоже никакой разницы
425 3510805
>>510768

>крутись в мейне тогда, мне похуй



Ну я еще раз поздравляю, ты только что расписался в том, что твоя шизоидная идея приводит к 500кам на проде у юзеров, которых можно было избежать, и тебе это ОК.

>в такой ситуации вобще похуям где крутиться



Нет, не похуям. В случае крешлупа в кубере у тебя старый релиз продолжает работать как и до этого.
426 3510816
>>510805

>приводит к 500кам на проде


ты даун.

>В случае крешлупа в кубере у тебя старый релиз продолжает работать как и до этого


никак иначе старый релиз кубер попросить оставить нельзя
спасибо крешлуп что держишь прод этого анона в строю, если бы не ты...
427 3510855
>>510816

>этот бессильный пердеж ребенка посмотревшего 2 ролика инфоцыган, и поверившего, что он понимает бэкенд



С этим уже поняли, а что то по факту будет, чепушило?

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

В прочем школьнику даже мозгов не хватило на хотя бы ливнес/рединес пробы, хотя и даже с ними этот подход максимально мудацкий вместо простого завершения аппа из-за невозможности стартануть все зависимости.
Untitled.png1 Кб, 50x42
428 3510872
>>510855

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


> ээээ а как мне написать реконнект, я не умею, это сложно, а что если 500 полетят, я же дегенерат я не знаю что делать

429 3510877

> Пуков прикрути хук при неудачном коннекте к этому конкретному сервису при запуске после 10 ретраев с 10 секундным таймайутом


> эм пук пук среньк извините, я только умею os.Exit(-1), а дальше я всё

image.png287 Кб, 682x1000
430 3510883
>>510872
>>510877

>ну давай, напиши мне ретрай политику на каждую из 30 зависимостей в 500 сервисах, которая сэкономит тебе НИХУЯ


>эээ блэээ штооо мине на курсах гаварылы что у миня толка 1 бд в прилажении и всиооо што такова то ЗАТО ПОД НЕ РЕСТАРТИТСА ЫЫЫ



Дура, срыгни с доски
image.png116 Кб, 600x550
431 3510885
>>510872

>Пердеж, ты зачем такой код написал, что у тебя под с нерабочей БД в прод выкатился? Ты в курсе что у нас за 5 минут уже 1к обращений набежало?


>ыыыы ну и штооо я жи на дашборди всиоо увидил и па логам обнаружыл праблему и откатиил


>Пердеж, но ты же мог просто изначально написать так, что у тебя сервис просто не стартанет? Ты на ровном месте создал деградацию с фоном спт


>ыыыы ыди нахуи блеа

432 3510886
>>510883

> да тимлид, да всмысле я мудак, это же ничего не сэкономит, не буду эту тасочку делать!! не нужен вам этот хук!!!!


> вы видели сколько там зависимостей! это же сколько раз мне придется ctrl-c ctrl-v нажимать????? всмысле я долбоёб, всмысле просто написать абстракцию и пере использовать код???? ряяяяяяяяя



>>510885

> под с нерабочей БД


> выкатывается в прод, еще и обрабатывает запросы


блять я не верю что такое возможно, скажи что ты шутишь
433 3510887
вы реально угораете или прод у вас это майнкрафт сервер?
434 3510897
а стоп, я только сейчас понял, даун чтоли хочет стартовать сервер, даже при том что не смог подключиться к бд, при этом параллельно ее работе сидеть переподключаться?
сидя ловя с довольным ебалом 500?

если да, то я просто бездарно потратил время на этого дауна
image.png54 Кб, 300x296
435 3510907
>>510886

>мудозвон, ты зачем в бесконечном цикле коннект к базе ретраишь?


>эээ ыыы ну ета штоби подик в кубере не крешлупился ВО!



>>510897

>хочет стартовать сервер, даже при том что не смог подключиться к бд, при этом параллельно ее работе сидеть переподключаться?



Это буквально ТВОЕ предложение несколькими постами выше, скотина безмозглое.
Я тебе пидорасу задал вопрос - ты ответил да, приложуха будет жить с неподключенной бд и бесконечно тыкаться в нее коннектом.

А когда я взял и рационализировал твою хуйню до уровня:

>Более того в рамках условного подключения к БД у тебя могут быть ретраи на коннекты в рамках самого аппа - не подключился - попробовал еще N раз - все еще не получилось - os.Exit() - запускается редеплой.



Ты взял и начал пиздеть "да да это я придумал я это и имел в виду"

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

Имаджинировали ебальник этого идиота?
436 3510909
Но на деле все проще и

>Более того в рамках условного подключения к БД у тебя могут быть ретраи на коннекты в рамках самого аппа



Такой хуйней на практике никто не занимается, и дальше обычного завершения аппа никто не идет. Потому что если у тебя настолько частая проблема что твое приложение не может подключиться к базе и тебе надо ретраить эту хуйню чтобы не дай бох куберу не стало плохо от перезапуска пода, то у тебя говно в штанах руткоз с dbaas и инфрой, причем такой, что никакие обоссаные ретраи не сделают тебе лучше.
437 3510911
>>510907
не умеет читать, напридумал у себя что то в голове, начал это доказывать, виноват я
больше не пиши мне)
438 3510932
>>510911

>> Бесконечно переподключаться к бд, при этом само приложение у тебя будет жить?)


>именно так



Понимаю, у пиздоголового ребенка пошла стадия отрицания и он такого не говорил)

Чисто попуск малолетний, лол.
439 3510944
>>510932
ты типо не знаешь что такое приложение?)
image.png38 Кб, 300x300
440 3510949
>>510944

>ти типа ни знаеш што такоэ прилажение?)



Давай, запиздевшийся ребенок, удиви нас своими познаниями
441 3510951
>>510949
компьютерная программа что ты запускаешь, она может выполниться свою работу и завершиться

еще тупые вопросы будут?
442 3510958
>>510951
У меня только вопрос какой мудак тебя научил в компьютерной программе, которая представляет собой микросервис, запускаемый в кубере, писать бесконечное переподключение к бд.
Так чисто, понять, откуда ты вылез.
443 3510961
>>510958
я как понимаю уже понял где обосрался и решил с темы свернуть? ну давай еще на один вопрос отвечу

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

>уже понял где обосрался



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

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



У тебя микросервис отвечает за регистрацию пополнений счета например. Без базы данных твой микросервис не может выполнять свое предназначение. То есть он НЕ работает.
Зачем ты, ебливый пидарас, оставляешь его бесконечно переподключаться, оставляя процесс работать? Можешь не отвечать, я уже понял, что ты мудак.
445 3510985
В догонку.
Допустим у тебя твоя хуйня запускается вместе с аргументами, в которых указываются параметры коннекта.
И какой-то мудак запустил с неправильными параметрами

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

Или еще круче - твоя хуйня запускается, получает параметры из динамического внешнего конфига и начинает подключение. По какой-то причине в этот момент там лежали не те параметры и твоя хуйня опять долбится в базу с невалидным говном.
446 3510989
http сервер автоматом создает горутины на каждый запрос.
А вот обработчик по умолчанию обрабатывает запросы последовательно.Получается к примеру 10к/сек запросов пришло,то они все тупо встанут в очередь к 1 обработчику на одном! ядре?
447 3510994
>>510982
>>510985
приложение в критическом состоянии: не можем подключиться к базе данных
варианты развития:
1) офнуть приложение, надеятся что кто то из вне его перезапустит, и когда то в какой то момент наверное мы снова подключимся, при каждом перезапуске инициализировать приложение с нуля
2) пытаться получить это подключение в цикле (с n количеством ошибок, таймаутом и чем твоей душе угодно), возможно оно появиться позже, а сейчас бд просто не доступна (желательно уведомлять инфрастуктуру о своем состоянии, если ее нет, то хотя бы в логи пукать)

если тебе не понятно почему первый вариант говно, то я тут уже тебе не помогу

проблемы второго варианта: ты не можешь понять что происходит с запущенным приложением
решение: прикрутить нормальный дашборд для сервисов, в котором можно было бы просматривать его состояние, его доступность к необходимым подключениям, если ты это можешь узнать только по логам контейнера, земля тебе пухом и твоей конторке
448 3510998
>>510961
Ты долбоеб?
449 3511000
>>510989
Почитай, как работает многопоточность. Треды, квант времени, вот это все.
450 3511008
>>510994

>не можем подключиться к базе данных


Пишем в консоль и падаем с ошибкой. Это база.
451 3511011
>>511008
А перезапускать как?
мимо
452 3511014

> обрабатывать реконнект подключения при запуске в цикле


> НУ ТЫ И МРАЗЬ



> крутить в кубере сервис в крашлупе


> ОМ НОМНОМ, ВОТ ЭТО Я УМНО ПРИДУМАЛ



>>511008

>Это база.


Да я уже по треду так и понял
453 3511048
>>510994

>офнуть приложение, надеятся что кто то из вне его перезапустит



Не кто-то а система оркестрации контейнеров, в которых у тебя микросервисы. Это настроено по дефолту и просто работает.

>пытаться получить это подключение в цикле (с n количеством ошибок, таймаутом и чем твоей душе угодно)



Не пизди, выше ты писал про бесконечный реконнект. Про n переподключений и падение писал тебе я вот здесь >>510695, и ты просто повторил.

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

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

>прикрутить нормальный дашборд



Вообще не имеет отношения к обсуждаемому вопросу. Да, это офк должно быть по умолчанию, но к теме не относится.
454 3511058
>>511048

>Не кто-то а система оркестрации контейнеров


приложение обязано знать кто и откуда его запускает?

>Не пизди, выше ты писал про бесконечный реконнект. Про n переподключений и падение писал тебе я вот здесь


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

мы опять свели всё к тому что ты со мной согласен, но просто напридумывал за меня тезисы?
455 3511067
>>511011
Этим занимается сервис меш. Может быть миллион причин, почему бд отвалилась, но это не твоя забота.
456 3511069
>>511058
Чел мне что интересно, ты контейнер без проб стартуешь? Если у тебя на условном mustLoad отъеюыаает конекшен (бд недоступна), то до условного listenAndServe ты в мейне не дойдешь только не говори, что ты сначала запускаешь сервер, а потом инитишб конфиги и подключения . Тебе куюер просто убьет Деплой по таймауту, потому что апка не поднялась
457 3511079
>>511058

>приложение обязано знать кто и откуда его запускает?



Нет, но это не проблема. Твоя ответственность это организовать под аппку среду запуска. Это будет или настроенный кубер, или самописное баш-говно. Да хоть индус который будет руками залупу перезапускать.

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

>мы опять свели всё к тому что ты со мной согласен, но просто напридумывал за меня тезисы?



Так можно отмотать ветку и посмотреть с чего все пошло.
А именно с твоих тейков про то что паниковать нельзя, и какого то кринжа про коннект в хендлере.
Как видишь с тебя кринжануло пол треда. Уж не знаю с чем это связано - с тем что ты просто плохо свои мысли выражаешь или с тем что осознал свою ошибку и вовремя переобулся под общепринятые подходы в этих вопросах.
458 3511085
>>511079

>Так можно отмотать ветку и посмотреть с чего все пошло.


ну так отмотай, и опять окажется что ты обосрался
459 3511101
>>511085
Ну так там буквально тобой написаны долбоебские говнотейки которые были каждым тут обоссаны по триста раз.

>Уж не знаю с чем это связано - с тем что ты просто плохо свои мысли выражаешь или с тем что осознал свою ошибку и вовремя переобулся под общепринятые подходы в этих вопросах.

460 3511108
>>511101
ага, только их сюда не пиши, а то опять окажется что ты опять не смог прочитать три строчки, не выдумав тейки у себя из головы

давай анончик, жги, пиши прям тпод этим постом тейки с цитатами, посмотрим какой ты не тупой
461 3511142
>>511108
Хз если ты с первого раза не смог прочитать выше с цитатами и квотами постов, в каких местах ты нес нерелейтед хуйню, то дальше бессмысленно продолжать. Отдохни лучше, а то перегрелся.
462 3511185
>>511142

> ни одной цитаты а только свои шизомысли


о чем я и говорил, ты ирл надеюсь не такой же шизофреник
463 3511202
>>511108
Шиз, ты мне ответишь ?
Что твой говно сервис будет на хелсчек возвращать, когда конект отъебнул и ты крутишься в мейне, пытаясь его восстановить
464 3511261
>>511202
что твою мать на проде по кругу пускают, не пиши мне
465 3511277
>>511261
Шизики блять еюанутые. Вы тут дрочите свою стань с реконектом к базе при деплое/рантайме. И не можете внятно сказать - что будет у вас возвращать хелсчек?
если он возвращает 200 - вы добавь, какова хуя первая арка возвращает 200
Если 500 - то нахуя в рантайме продолжится с реконектом и держать по сути мертвую поду в кубере и пускать на нее трафик.
Дегенераты, блять. Походу пора их шишечки вкатываться, раз появился риск, что подобных дебиков хрюшки приведут на смотрины
466 3511292
>>511185
>>511261
Азаза сука, пиздец это эталонный аутяга
Долбоеба по 500 раз разъебали и обоссали, а он все еще просит чтоб на него продолжали ссать

Мерзость подзалупная, срыгалидзе оформи, не позорь борду своим 60iq
467 3511314
>>511277

> Если 500 - то нахуя в рантайме продолжится с реконектом и держать по сути мертвую поду в кубере и пускать на нее трафик


ты понимаешь что ты дегенерат по 2 кругу идешь?)

>>511292

> разьебали и обосали


после того как просьбы показать где, неожиданно анон пропадает, и начинает спрашивать другие тупые вопросы
468 3511320
>>511314
Так тебе было показано выше, выделяли гринтекстом и квотили твои кринжевые посты, еще раз повторяю

Ты просто включил малолетнего долбоеба(так как понял что обосрался) и делаешь вид что ничего не было, рофл
469 3511322
по итогу:

> defer вызывающийся только в конце функции не баг, а фича! так вобще во всех языках программирования сделано


(ни в одном)

> вот анончик держи код как надо реконнект делать


в коде: паника в горутине которую никто не ловит, висящая горутина, дата рейс

> паниковать из низкоуровневого кода это отличная идея, не стоит этого боятся


(оказалось что низкоуровневый код это main, тесты и валидация)

> реконектиться не надо, пусть кубер этим занимается


дай бог тебе здоровья, хоть на баше реконнект пиши

что еще упустил?

>>511320
покажешь этот пост с

> выделяли гринтекстом и квотили твои кринжевые посты


а то вдруг окажется что квот и гринтекст это шизойдные мысли
17540642324720.png39 Кб, 300x300
470 3511325
>>511322

>что еще упустил?


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

>>510932
>>510944
>>510949
>>510951
471 3511340
>>511322
>>511325

>Бесконечно переподключаться к бд, при этом само приложение у тебя будет жить?)



Внимание, ответ бестолкового уебана:

>именно так



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

Затем мною было написано:

>Более того в рамках условного подключения к БД у тебя могут быть ретраи на коннекты в рамках самого аппа - не подключился - попробовал еще N раз - все еще не получилось - os.Exit() - запускается редеплой.



Бестолковый уебан осознал, что ранее спизданул хуйню и зацепился за высказанный мной способ, якобы это он имел в виду, и просто повторил:

>2) пытаться получить это подключение в цикле (с n количеством ошибок, таймаутом и чем твоей душе угодно)



За что был пойман и с позором еще раз обоссан.
После чего уебан решил, что это все придумали, на что все гринтексты и квоты ему показали здесь >>511048 и здесь >>510932

После чего ребенок начал выть сильнее и судорожно все отрицать.

>объяснять что такое приложение


>с незнающего долбоеба рофлили, а он такой "ДА Я РИАЛЬНА ТУТ ОБЪЯСНЯЛ ВАМ"



Ебало представили?
471 3511340
>>511322
>>511325

>Бесконечно переподключаться к бд, при этом само приложение у тебя будет жить?)



Внимание, ответ бестолкового уебана:

>именно так



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

Затем мною было написано:

>Более того в рамках условного подключения к БД у тебя могут быть ретраи на коннекты в рамках самого аппа - не подключился - попробовал еще N раз - все еще не получилось - os.Exit() - запускается редеплой.



Бестолковый уебан осознал, что ранее спизданул хуйню и зацепился за высказанный мной способ, якобы это он имел в виду, и просто повторил:

>2) пытаться получить это подключение в цикле (с n количеством ошибок, таймаутом и чем твоей душе угодно)



За что был пойман и с позором еще раз обоссан.
После чего уебан решил, что это все придумали, на что все гринтексты и квоты ему показали здесь >>511048 и здесь >>510932

После чего ребенок начал выть сильнее и судорожно все отрицать.

>объяснять что такое приложение


>с незнающего долбоеба рофлили, а он такой "ДА Я РИАЛЬНА ТУТ ОБЪЯСНЯЛ ВАМ"



Ебало представили?
472 3511342
>>511340

>Бесконечно переподключаться к бд, при этом само приложение у тебя будет жить


Приложение живое, подключается к бд, запросы не принимает

Слушаю оправдания что это не ты тупой не можешь прочитать не жлпой текст
473 3511356
>>511342

>Приложение живое


>У тебя микросервис отвечает за регистрацию пополнений счета например. Без базы данных твой микросервис не может выполнять свое предназначение. То есть он НЕ работает.


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

>Допустим у тебя твоя хуйня запускается вместе с аргументами, в которых указываются параметры коннекта.


И какой-то мудак запустил с неправильными параметрами

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

Вот и я хз почему ты читаешь только жопой и тебя из раза в раз надо тыкать мордой в текст, чтобы ты понял, что твой вариант — говно.
474 3511359
>>511356

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


> В итоге сидел с горящей жопой доказывал что сам и придумал


Что и требовалось доказать

>>511340

> зацепился за высказанный мной способ, якобы это он имел в виду


Так якобы или я это изначально и имел ввиду?
475 3511365
Надо до бамп лимита добивать, чтобы позор анона забылся навсегда
476 3511369
>>511359

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


>капающая слюна с подбородка


>дурачок, если апп запустить с -host=228 то он никогда не подключится и повиснет так как ты предлагаешь бесконечный реконект


>обезъяна в голове ударила в барабанные тарелки



Другого и не ждал.

>я это изначально и имел ввиду



То что ты изначально имел в виду я выделил в позапрошлом посте, что ты и подтвердил фразой "именно так". А имел в виду ты говнистый вариант который не выдерживает никакой критики.
477 3511370
>>511365
Я бы наоборот в шапке оставил этого мелкобуквенного долбоеба, не умеющего пользваться дефером, паниками и настроить редеплой своего говнокода, обложив рединес пробами.
478 3511371
>>511369

> Имплаинг что если сервис не отвечает на запросы, но запущен, он не живой


Ещё раз подтвердил мой пост)

Жду ещё гринтеуста, тебе нужно постов 20 как минимум добить
479 3511372
>>511371

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


>капающая слюна с подбородка



Оказалось, чтобы поставить долбоеба в тупик, достаточно вот такой очевидной даже школьнику залепухой.
480 3511374
>>511372
А типо если грохнуть под то он у тебя начнет работать и запросы принимать?)
481 3511377
>>511000
Прочитал про многопоточку и горутины в го.
Проэктировать код чтобы все красиво работало- тот еще гемморой
482 3511379
>>511374
Вот уже пошли вопросики близкие к твоему уровню iq.
Но давай я тебя просвящу — нет, у тебя просто не будет активного и бесполезного пода в деплойменте.

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


>капающая слюна с подбородка



Все еще нет ответа, фиксирую дауна.
483 3511381
>>511379

> Будет работать если сделать иначе?


> Нет


Никакого щелчка в голове не появились до сих пор?

> Бесполезный под


Который может заработать если появиться конекшен
484 3511385
>>511381

>коннекта к бд нет, но под активен и с точки зрения билд системы все ок


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



Никакого щелчка в голове не появились до сих пор?

>если появиться конекшен


>дурачок, если апп запустить с -host=228 то он никогда не подключится и повиснет так как ты предлагаешь бесконечный реконект



Ты типо решил наглядно показать свою хуйню с бесконечным повторением бесполезного действия?)
485 3511387
>>511385

> с точки зрения билд системы все ок


Какое отношение билд система к подключению к бд в рантайме имеет?)

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


Вместо дашборда узнаем статус сервисов из логов?)
Ну тогда да, если для тебя это проблема, и вам сложно узнать текущее состояние система то такое будет сложно сделать, легче тяп ляп

> ,если апп запустить с -host=228 то он никогда не подключится и повиснет так как ты предлагаешь бесконечный реконект


Именно так, приложение должно знать как ему хэндлить такую ситуацию, логику можно спокойно в конфиги перенести
Опять таки, если для тебя проблема узнать о состоянии сервиса, то проблема не в цикле переподлключения
486 3511389
>>511387
У тебя задача задеплоить свою хуйню, ты поставил деплой, увидел что под запустился. Но это не гарантирует что твой сервис обрабатывает платежи, так как получил бесконечный реконнект с -host=228 который до тебя указал в сборке какой-то мудак. Это просто создает мнимое ощущение успеха, которого можно было избежать.

>легче тяп ляп



Конечно легче, только это не тяп ляп. Ты нажал кнопочку деплоя и вместо активного пода увидел красный кубик и "exit code: 1. failed to connect to db" и прогресс бар деплоя начал повторно крутиться. Итого ты моментально понял что не запустилось и почему не запустилось. То есть тебе не нужно даже что-то идти и узнавать о сервисе, у тебя он по факту не запускается сразу.
487 3511393
>>511389

> Но это не гарантирует что твой сервис обрабатывает платежи


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

> увидел красный кубик и "exit code: 1. failed to connect to db"


> не нужно даже что-то идти и узнавать о сервисе


Классно ты не пошел и не узнавал о статусе сервиса
488 3511397
>>511393

>Классно ты не пошел и не узнавал о статусе сервиса



Так я не ходил никуда, я на UI деплоя сервиса находился в ожидании успеха, и в нем же увидел красный кубик и текст ошибки запуска.

>для такого есть способы узнать о конкретном состоянии сервиса прямо из дашборда



А вот ты несмотря на зеленый деплой как раз взял и пошел чекать даш а то не дай бог что то не подключилось.
489 3511447
>>511393
ты нахуя на мертвое приложение трафик льешь?
490 3511452
Сап! Что нужно знать на гошного сеньку? Успешно перекладываю жисоны, попукиваю в кафку. Вот и подумал пора с работяги миддла подтягиваться на сеньора-помидора.
491 3511461
>>511447
Ты не понимаешь. Возможно в будущем это мертвое приложение станет живым. После того как оно сможет подключиться к бд.
492 3511463
>>511452
Нужно уметь уверенно раскидать челобасов выше по треду. Похуй кого и в какую сторону, главное установить доминирование так чтобы прожекты потекли.
493 3511506
>>511461
Да, но ведь эта залупа отдает мне 200-ые на хелсчек, и я продолжаю хуярить туда трафик, который нихуя никогда не будет обработан. Вместо того, чтобы пустить трафик на резервные каналы
494 3511518
>>511506
Почему не будет? 500 это тоже обработка.
495 3511520
>>511506

> эта залупа отдает мне 200-ые на хелсчек


А должна 500
496 3511549
>>511518
>>511520
Должна 503-я. Чтобы клиент понимал, что у него бэк отвалился и надо идти в резервный канал. клиент должен получать явную и валидную ошибку.
А то вы тут ебанину какую-то развели. Пода зеленая на дашборде, но внутри хуярит ретраи к базе. А клиенты толпятся на входе и не понимают "А хуле делать-то".
Отъебнуло что-то в рантайме - пробуй восстановится. Не получилось - падай нахуй и не еби клиентам мозги.

На деплое не получилось что-то must прогрузить - не вставай блять. Какова хуя, если ты не смог прийти к рабочему состоянию апки - вообще куберу аппруваешь пробу и поднимаешься. Он на тебя трафик пустит, который сразу начнет 500ми срать. Ебать технологии
image.png1020 Кб, 1600x1000
497 3511558
>>488894
а с чего на джаве рухнум тотальный ?
сам с C# сижу, там и так не много вакансий было, а теперь еще меньше, вот статистика если что
Так же думаю переходить на GO
498 3511666
>>511549
Да тот поридж обосрался со своими ретраями, но продолжает позориться до конца. Хихол, наверное.
499 3511726
>>511067

>сервис меш


Сложно. Не быть мне бэкендером...
500 3511819
>>511726
Это кубер жи есть.
На собесах часто любят спрашивать такую хуйню. То что такое сервис меш ммм какой же вы синьор если не знаете. То чем оптимистическая блокировка отличается от пессимистической ничем нахуй в бд есть только одна блокировка
изображение.png26 Кб, 871x545
501 3511858
как вам контест в Озоне?

у меня нейронка только хуй нарисовала, а надо шестиугольники
Нашли они неберующуюся тему
502 3511903
>>511858

>контест


Что это? Выступаешь анальным клоуном в надежде понравиться кабанчику?
503 3512087
>>511858
Ебать, че за кринж. А там есть какие-то задачи на нетривиальную асинхронщину с какой-нибудь хитровыебанной гонкой данных или что-то подобное? Что будет делать по работе человек, решающий такие задачи?
504 3512095
>>512087
В контестах от озона обычно 300iq алгос задачи дают. В целом неплохой вариант для зеленого джуна вкатиться нынче
505 3512113
>>512095
Пиздец, ну и гои. Тысячи вкатунов соревнуются кто быстрее надипсикает задачку с регионального этапа школьной олимпиады по информатике.
506 3512148
>>510989
Нейросети предлагают для простых и средних задач не париться,на крайняк указать количество ядер для обработки.А Worker Pool использовать для очень тяжелых вычислений.Они врут?
507 3512276
>>511858
Озон уверенно идет по стопам яндекса. Они делают все, чтобы опытные разработчики сразу скипали их вакансии, откликались только студенты без опыта. Хотят как в яшке, где чел с двумя годами самый опытный в команде, а у лида три года. Если у яндекса хотя бы есть славное прошлое и какие-то наработки типа юдиби, то озон - это же сраный магаз со сраной доставкой и нулевой сложностью в задачах. Такие озоны есть литерали в каждой стране, никакого рокет саенса там нет.
Мне запомнился один доклад на хайлоаде от озона. Они слепили сервис для курьеров, сервис начал тормозить, покорители олимпиад бросились оптимизировать и добрались аж до асма. Нихуя не помогало. Потом случайно мимо проходил опытный разработчик, остановился, прищурился, сказал "сделай шардирование, кид" и ушел в закат. Сделали и о чудо все заработало.
508 3512338
>>512276
Понятно, не хочешь сука работать 40 часов в неделю в Москва Сити
509 3512370
>>512113
Гои в данном случае только мидлы, так как для них контест представляет тоже самое, но задачи сложнее. А джуны пусть алгосики решают, один фиг ничего не умеют другого полноценно
510 3512376
>>512276
Там вроде рокет саенс сводится к написанию своих аналоговнет. Вроде на их сайте по ИТ выдел в стеке много самописного. В целом яшка вроде также делает
511 3512436
>>512376
Представь, как там воняет код. Что могут написать студенты? Правильно, нихуя. Норм может написать чел с 20 годами опыта, но таких отсеивают литкодом и ебанутыми контестами. Яшка давно превратился в обычную галеру со студентами, озон туда же.
512 3513591
Какие перспективы есть? У меня знакомый пошел в финтех с джавой, но судя по всему там жопа. Вакансии есть, но какого характера и с какими требованиями это отдельная тема. На го в целом сейчас как дела с поиском первой работы обстоят?
513 3513610
>>513591

>с поиском первой работы


как и везде, хуево
по крайней мере есть стажировки и джуновские вакансии, если ты с топ универа то тебя могут и от туда заманивать сразу
514 3513983
>>474706
Топовый рассказ. Вот это реальность, вот она. А то все только выебываются, а тебе хватило сил правдой поделиться. Молодец!
515 3515380

> в стд либе нет функции копирования файла



АХАХАХАХАХАХА, погодите, это реально?????
516 3515803
>>515380
io.Copy?
image.png278 Кб, 1921x968
517 3515922
Наконец-то и говноланг разработчики начили дебажить нюли.
518 3516069
>>515803

> файла

519 3516071
>>516069
Че дурак что-ли? Тебе дали универсальный интерфейс для взаимодействия, в т.ч. и с файлами. Что не нравится?
520 3516076
>>516071

>с файлами


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

>Что не нравится?


ты блять угараешь? ТЕБЕ РЕАЛЬНО НЕПОНЯТНО ЗАЧЕМ В СТАНДАРТНОЙ БИБЛИОТЕКЕ ФУНКЦИЯ ПО КОПИРОВАНИЮ ФАЙЛА?

В итоге в каждой репе будет по 15 реализаций копирования файла, прямо как тут
https://stackoverflow.com/questions/21060945/simple-way-to-copy-a-file
не смущайтесь, прочитайте, там пиздец
521 3516098
>>516076
Не нужно, все по методичке дедов
522 3516113
>>516098
А почему нет.
523 3516128
>>516076
Ну вон там на SO накидали вариантов

ioutil.WriteFile
или
w, err := os.Create("out.txt"); w.ReadFrom
image.png12 Кб, 456x107
524 3516152
>>516128
есть повеселее варианты

именно поэтому эта функция и должна быть в стд либе, посмотри сколько там вариантов уже накидали, и с дальнейшими версиями го еще появится
525 3516258
>>516152
так напиши им в группу что надо такая фича
526 3516266
>>516113
Это усложняет язык,так говорят деды
527 3516288
>>516071
Ну например скорость, функция копирование ОС будет быстрее. А ещё файлы можно не только копировать, но и перемещать.
528 3516363
>>516288

>функция копирование ОС будет быстрее


Что это значит?
529 3516669
>>516076
В чем проблема написать 3 строчки?
Вкатуны настолько обленились, что ленятся написать 3 строчки кода?
ЛФК, можно былоти 3 строчки в нативную либу убрать. Но их отсутствие не вызывает никаких проблем
530 3516694
>>516669

> В чем проблема написать 3 строчки?


в три строчки ты только такое напишешь >>516152

>Вкатуны настолько обленились, что ленятся написать 3 строчки кода?


именно по этой причине стандартная библиотека и существует, чтобы блять васяны свои реализации в каждой репе свои реализации велосипедов не плодили

>Но их отсутствие не вызывает никаких проблем


Нет, конечно не каких проблем, просто в одной из библиотек которой ты пользуешься окажется что чел решил реализовать копирование файлов вот так >>516152
531 3517407
>>516266
Нет, не усложняет. Высунь язык свой посильнее - и ты увидишь там драконьи узоры.
А может и не увидишь - если ты какой-то особенный.
532 3518782
Сап, пишу CLI утилиту. В принципе ничего сложного, он должен принять на вход zip архив, распаковать его, распарсить файлы и сгенерить документацию. Использую пакеты os, flag fmt.

Так вот что интересно про флаг. Я не понимаю почему если использовать flag.String() то он возвращает УКАЗАТЕЛЬ на тип строка, а если использовать StringVar и причем прописывать переменную с помощью амперсанда то все ок. Чат жпт мне объяснял что дело в том что ты пишешь flag.Parse(). Но если честно я нихуя не понял. Я привык что подобные вещи работают как функции. В том же питоне например, из которого я пытаюсь выкатиться. Там просто импортируешь пакет и используешь это как стандартную функцию. Никаких указателей, ничего

Я также попросил чат жпт сгенерить мне свою версию работы с флагами, так он мало того что импортировал те же пакеты, он блять их не использовал а работал через парс кажется os.Args[]. Хотя в VS Code если не использовать пакеты ты тупо ошибку компиляции получаешь.

ЧЗХ вообще?? Я из за таких хуевин и перестаю что то новое осваивать ибо это выглядит как усложнение ради усложнения
Обновить тред
« /pr/В начало тредаВеб-версияНастройки
/a//b//mu//s//vg/Все доски

Скачать тред только с превьюс превью и прикрепленными файлами

Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах.Подробнее