Size: a a a

2020 July 28

DD

Deka Dancer in Go-go!
Andrei 🦉 Sergeev
это я так завуалированно вас предупредил, что вы собираетесь лепить говнокод
Пока ты нес чушь в группе про Голанг я уже разобрался и написал код
источник

B

Bat in Go-go!
это рофл?) вместо того чтобы юзать проверенный годами стабильный, безопастный и всеми известный nginx - писать свой лисапед)
источник

DK

Daniil Kuznetsov in Go-go!
Deka Dancer
Пока ты нес чушь в группе про Голанг я уже разобрался и написал код
😂
источник

MB

Max Block in Go-go!
Приветствую! Подскажите по общепринятым в Го подходам. Есть цель научиться читать на Go код определенных проектов, для этого в учебных целях делаю тестовый блог, чтобы научиться и самому языку, и общепринятым архитектурным решениям.

Есть простой блог, в нем есть сервисы: user (регистрация, логин, апдейт профайла и т.п.) и post (создания поста, поиск по постам и прочее).

Я вижу тут два варианта к организации этих сервисов:

1) Используем пакеты.
Например пакет user, в нем методы типа Login(), Register(), UpdateProfile() и прочее.

2) Используем структуры и в них создаем методы. Т.е. создаем пакет service, а в нем две структуры UserService и PostService. И уже все эти методы прикручиваем к соотвествующим структурам.

Я начал с первого варианта, т.е. просто исопльзовал пакеты типа user. Но начало раздражать, что у меня из-за того что пакеты называются user и post, переменные приходится называть как-то более сложно и осознанно. А я привык в коротких функциях использовать простые названия просто post. А тут это имя занято уже названием пакета и приходится что-то усложнять.

Какой вы считаете подход более распостраненный для реализации сервисов на Го?
В самих сервисах у меня из внутренних состояний есть лишь коллекция базы данных (монгодб), которая инициализируется при запуске сервера.
источник

DD

Deka Dancer in Go-go!
Bat
это рофл?) вместо того чтобы юзать проверенный годами стабильный, безопастный и всеми известный nginx - писать свой лисапед)
Я понимаю у тебя проблемы с интеллектом но в следующий раз подумай что не все такие примитивные как ты. Если бы мне надо было решение на нгинкс хапрокси или траефике или кадди или любом сраном роутере я бы пошел в группу про роутеры. Андерстанд чукча?
источник

RR

Rokker Ruslan in Go-go!
Вот, стазу чатик го узнаётся
источник

B

Bat in Go-go!
Deka Dancer
Я понимаю у тебя проблемы с интеллектом но в следующий раз подумай что не все такие примитивные как ты. Если бы мне надо было решение на нгинкс хапрокси или траефике или кадди или любом сраном роутере я бы пошел в группу про роутеры. Андерстанд чукча?
ахаха какое животное) твое сообщение говорит лишь о том что тебе нужен был роутер "посадить несколько сайтов на один http порт" так что либо ты не до конца описал свой кейс либо написал велосипед и тешишь свое эго тем что написал велосипед. А еще скатываешься до оскорблений. Ничего лет через 10 надеюсь подрастешь)
источник

АП

Александр Попов... in Go-go!
хватит токсить
источник

A

Aikidos in Go-go!
Deka Dancer
Я понимаю у тебя проблемы с интеллектом но в следующий раз подумай что не все такие примитивные как ты. Если бы мне надо было решение на нгинкс хапрокси или траефике или кадди или любом сраном роутере я бы пошел в группу про роутеры. Андерстанд чукча?
вот это ворвался
источник

VK

Vadim K in Go-go!
Дайте ссылку на группу про роутеры
источник

DP

Daniel Podolsky in Go-go!
Max Block
Приветствую! Подскажите по общепринятым в Го подходам. Есть цель научиться читать на Go код определенных проектов, для этого в учебных целях делаю тестовый блог, чтобы научиться и самому языку, и общепринятым архитектурным решениям.

Есть простой блог, в нем есть сервисы: user (регистрация, логин, апдейт профайла и т.п.) и post (создания поста, поиск по постам и прочее).

Я вижу тут два варианта к организации этих сервисов:

1) Используем пакеты.
Например пакет user, в нем методы типа Login(), Register(), UpdateProfile() и прочее.

2) Используем структуры и в них создаем методы. Т.е. создаем пакет service, а в нем две структуры UserService и PostService. И уже все эти методы прикручиваем к соотвествующим структурам.

Я начал с первого варианта, т.е. просто исопльзовал пакеты типа user. Но начало раздражать, что у меня из-за того что пакеты называются user и post, переменные приходится называть как-то более сложно и осознанно. А я привык в коротких функциях использовать простые названия просто post. А тут это имя занято уже названием пакета и приходится что-то усложнять.

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

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

MB

Max Block in Go-go!
Daniel Podolsky
Пакеты, структуры и интерфейсы распространены :)

Это большая тема, но, если коротко, можно ориентироваться на удобство тестироаания
Я еще столкнулся с проблемой циклических импортов. Т.е. у меня в пакете user есть вызовы из пакета post, и в пакете post есть вызовы из пакета user. Как я понимаю это ж не разрулить просто?

В таком случае все держать в одном пакете service и делать структуры UserService, PostService — выглядит как решение.
источник

DP

Daniel Podolsky in Go-go!
Deka Dancer
Я понимаю у тебя проблемы с интеллектом но в следующий раз подумай что не все такие примитивные как ты. Если бы мне надо было решение на нгинкс хапрокси или траефике или кадди или любом сраном роутере я бы пошел в группу про роутеры. Андерстанд чукча?
Увидел бы сразу - прописал бы RO

Не надо так
источник

DP

Daniel Podolsky in Go-go!
Max Block
Я еще столкнулся с проблемой циклических импортов. Т.е. у меня в пакете user есть вызовы из пакета post, и в пакете post есть вызовы из пакета user. Как я понимаю это ж не разрулить просто?

В таком случае все держать в одном пакете service и делать структуры UserService, PostService — выглядит как решение.
Скорее - пакетов должно стать больше, а не меньше.

Точки пересечения уносятся в отдельные пакеты
источник

АД

Алексей Долгов... in Go-go!
Max Block
Я еще столкнулся с проблемой циклических импортов. Т.е. у меня в пакете user есть вызовы из пакета post, и в пакете post есть вызовы из пакета user. Как я понимаю это ж не разрулить просто?

В таком случае все держать в одном пакете service и делать структуры UserService, PostService — выглядит как решение.
зачем в UserService посты, если там в нем методы типа Login(), Register(), UpdateProfile()?
источник

DP

Daniel Podolsky in Go-go!
Но апломб свидетелей энджиникс подбешивает, да :)
источник

ШН

Шерзод Немножко Токс... in Go-go!
Посоны, есть такой код (куча такого):

defer kek.Puk()

при этом kek.Puk() возвращает error

Нормально ли делать так: defer func() { _ = kek.Puk() }()?
P.S.: Я в курсе, что ошибки нужно проверять, а не скипать.
источник

DP

Daniel Podolsky in Go-go!
А зачем так делать? Чтобы goland не ругался?

Я просто на эту ругань забиваю
источник

В

Влад in Go-go!
Парни, я освоил наконец-то GO!  Секрет успеха лишь в том, что бы каждый вечер катать с друзьями в кс го
источник

ШН

Шерзод Немножко Токс... in Go-go!
Daniel Podolsky
А зачем так делать? Чтобы goland не ругался?

Я просто на эту ругань забиваю
Да, чтобы не ругался (ворнинг пока что в IDE)
источник