Go тред №33 #47;go#47; 3390005 В конец треда | Веб
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/Alikhll/golang-developer-roadmap (постоянно обновляется сообществом)

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

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

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

Прошлый тред: >>3308295 (OP)
2 3390390
>>0005 (OP)
Почему так крипово то бля

мимо пистонист веб макака прохожу a tour of go
3 3390531
в конфу не заходите, там одни хохлы
4 3390717
вкотилсо
Снимок экрана 2025-02-18 232437.png162 Кб, 1476x1235
5 3392063
Доработал истинную случайность для анона из прошлого треда. Теперь потокобезопасно.
6 3392069
Пацаны, почему на ваш го так мало вакансий? Щас миддлогребу на питоне, от более старших пацанов слышал, что учат го и пересаживаются на него, но чет я работы на го вообще не вижу, кроме девопсовых вакансий.
7 3392089
>>2063
Ну давай покормлю тролля

Во-первых, отдельная структура под передачу инта это сука мощно, нужно добавить конструктор для этого "конфига" и будет вообще заебись
Во-вторых, какая в сраку истинная случайность метод, это даже не случайность, хуйня из под коня
8 3392090
>>2089

>Во-первых, отдельная структура под передачу инта это сука мощно, нужно добавить конструктор для этого "конфига" и будет вообще заебись



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

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



Не для тебя написано, хам.
9 3392095
>>2063
Надо:

- выделить интерфейс Randomizer, а реализация переименовать в RandomizerImpl

- создать RandomizerFactory, куда передавать
type RandomizerSupplier func(config RandomizerConfig) Randomizer

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

- и конечно MockRandomizer для тестирования

- добавить комментарии к коду
// Randomizer возвращает случайное число

Вот тогда это будет нормальный Java код.
10 3392138
>>2095
А теперь напиши, как должен выглядеть нормальный Go код. Пожалуйста.
мимопроходил
11 3392297
ы
12 3392545
>>2138
Подрывом обезумевшего от корпоративной культуры фабрикодекорирующего джаваскуфа удовлетворён
13 3392556
>>2545
Да напиши, мне интересно.
Почему в го не используются всякие паттерны? Они же вроде относятся к бек-разработке В ОБЩЕМ?
Почему абстрактная фабрика, например, это плохо?
Почему Clean Code - это плохо?
я вкатун, джаву знаю на уровне лаб
14 3392563
>>2556
Все там используется.

Достаточно посмотреть на внутреннюю библиотеку, где одних только методов для конструирования Request несколько штук. И на то как в go предлагается работать с бд (никак, вот тебе интерфейс - пиши свои имплементации сам).

Среди гошников очень много фанатов минимализма и нездорового KISS'а (особенно видно по реддиту, где на просьбу посоветовать ORM или фреймворк обязательно набежит чмо и начнет вонять что ничего для го не надо кроме встроенных функций). Но их мнение не учитывается, мало ли че петухи орут.
15 3392623
Как замокать функцию вернуть результат в тестах
func getRandom() int {
return 42
}
16 3392680
ну 5 дней до перевода книжки осталось я не могу ждать уже мне плохо
17 3392892
>>2563
Двачую. Много долбоебов, для которых го - это не джава. Они и код пишут, чтобы было максимально не как в джаве. В итоге снова и снова делают кривой спринг, у каждого свой.
18 3392917
Где почитать про пакеты и как ваще код разделять на модули и тд? Везде пишут НАЗОВИ ПРОСТО В ВИДЕ САЙТА example.com/hui/pizda
Обновить тред
« /pr/В начало тредаВеб-версияНастройки
/a//b//mu//s//vg/Все доски

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

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