Size: a a a

2019 December 27

B

Backend Разработчик in Go-go!
Александр Попов
мы говорим про кусок код в ваакуме, который пришел задал какой то левый чувак явно не претендующий на звание рок стар (без обид)
Не претендую) Иногда задаю вопросы тут, потому что в шапке написано "помните, все мы были новичками" (хотя я уже работаю бекендером, но если сказать что ты новичок то и пинать не должны:) )
источник

АП

Александр Попов in Go-go!
Backend Разработчик
Не претендую) Иногда задаю вопросы тут, потому что в шапке написано "помните, все мы были новичками" (хотя я уже работаю бекендером, но если сказать что ты новичок то и пинать не должны:) )
да никто тебя не пинает, если бы такой вопрос задал например подольский или кто из ком состава (ну в другой вселенной) я бы сто раз подумал над ответом ибо уже было бы ясно, что что-то не чисто :)
источник

AK

Andrey Kolkov in Go-go!
https://github.com/qiangxue/go-restful-api/issues/43#issuecomment-569148307 кто сможет наглядно пояснить? До конца не могу для себя определиться...)
источник

АП

Александр Попов in Go-go!
@schors Backend @QuarterToTen @nullelon  https://play.golang.com/p/tnBWrdv03z5
BenchmarkOne-4          1000000000               1.12 ns/op
BenchmarkTwo-4          1000000000               1.07 ns/op
источник

АП

Александр Попов in Go-go!
я тут бенчик на коленце сляпал :)
источник

АП

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

AK

Andrey Kolkov in Go-go!
Александр Попов
вариант 1 никогда у меня не пройдет ревью, усложнение на ровном месте. Исключения - очень редко, настолько редко что погрешность
https://medium.com/capital-one-tech/doing-well-by-doing-bad-writing-bad-code-with-go-part-1-2dbb96ce079a вообще вот хорошая статья по теме. Думаю многим пригодится...
источник

АП

Александр Попов in Go-go!
не осоли сейчас :)
источник

AK

Andrey Kolkov in Go-go!
Александр Попов
не осоли сейчас :)
Пусть люди почитают. Зачем усложнять то, что усложнять не нужно) думаю смысл поймут, а там глядишь и писать будут лучше)
источник

АП

Александр Попов in Go-go!
репозиторий сделан неправильно, насколько я понял
источник

AK

Andrey Kolkov in Go-go!
Александр Попов
репозиторий сделан неправильно, насколько я понял
А что именно?
источник

АП

Александр Попов in Go-go!
обычно у нас есть пакет с репозиторием, где в лежат модели + интерфейс + интерфейс билдера
источник

АП

Александр Попов in Go-go!
в суб пакет кладется реализация под конкретную бд
источник

АП

Александр Попов in Go-go!
ну по крайне мере у меня так сделано
источник

АП

Александр Попов in Go-go!
таким образом мы полностью отходим от вызова бд в приложении
источник

АП

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

АП

Александр Попов in Go-go!
Александр Попов
type ApplesRepository interface{
   Collection() ([]*AppleModel,error)
   Read(builder ApplesRepositoryBuilder) (*AppleModel, error)
   Update(builder ApplesRepositoryBuilder, model AppleModel) (*AppleModel, error)
   Delete(builder ApplesRepositoryBuilder) error  
}

type ApplesRepositoryBuilder interface{
  GetByName(name string) ApplesRepositoryBuilder
}

type AppleModel struct {
  Name string
}
мой очень старый пост
источник

АП

Александр Попов in Go-go!
это что лежит в корневом
источник

AK

Andrey Kolkov in Go-go!
Александр Попов
в суб пакет кладется реализация под конкретную бд
Ну, тут у кого как... я так понимаю Qiang хочет сказать, что entity - это некая общая структура для всего приложения. И нет смысла ее по пакетам разносить.
источник

АП

Александр Попов in Go-go!
тут по 1 скриншоту сложно понять что куда
источник