Size: a a a

2020 June 06

/

/dev/null in Go-go!
Никита
По опыту, книгам, статьям, примерам других проектов
проектам... например каким?
источник

Н

Никита in Go-go!
Но больше конечно же опыт. Насколько легко поддерживать и добавлять функционал
источник

/

/dev/null in Go-go!
Как-бы помягче сказать... Попробуйте другой архитектурный подход.
источник

Н

Никита in Go-go!
/dev/null
Как-бы помягче сказать... Попробуйте другой архитектурный подход.
Будет лучше если укажете конкретные моменты
источник

/

/dev/null in Go-go!
Никита
Будет лучше если укажете конкретные моменты
Тут указывать нечего, просто не пишите так.
источник

AK

Anton Kucherov in Go-go!
Никита
Руки не доходят до книг по DDD. Как-то, и надобности не ощущается пока что. Я вообще себе накидал шаблон приложения, по которому что-то делаю изначально. https://github.com/floyernick/Init. Если у вас будет возможность просмотреть и дать небольшое ревью, будет интересно
Ваш подход похож на классический Ruby On Rails подход. Т.е. приложение поделено на пакеты по слоям. Тот же Мартин, говорит о том, что код нужно делить по зонам ответсвенности а не по слоям. Слои можно реализовать даже в рамках одного пакета. Для этого достаточно соблюдать правило зависимостей. Проще говоря, деление на каталоги - не настолько принципиально важно, как выбор правильных абстракций и следование принципа инверсии зависимостей (между слоями).
источник

/

/dev/null in Go-go!
Вообще ИМХО стоит почитать труд дяди Боба, но не нужно следовать карго культу.
источник

VL

V L in Go-go!
/dev/null
Тут указывать нечего, просто не пишите так.
Слишком радикальное заявление. Для небольших/средних проектов layered architecture имеет право быть.
источник

Н

Никита in Go-go!
Anton Kucherov
Ваш подход похож на классический Ruby On Rails подход. Т.е. приложение поделено на пакеты по слоям. Тот же Мартин, говорит о том, что код нужно делить по зонам ответсвенности а не по слоям. Слои можно реализовать даже в рамках одного пакета. Для этого достаточно соблюдать правило зависимостей. Проще говоря, деление на каталоги - не настолько принципиально важно, как выбор правильных абстракций и следование принципа инверсии зависимостей (между слоями).
Да, только я не совсем понимаю профита от деления по зонам ответственности. С точки зрения продукта, что ли, нагляднее будет делить по зонам, понимать что есть в продукте со стороны бизнеса.

Но в техническом плане, профит в чем будет? И разве это не приведет к дублированию реализации сервисов в каждый пакет? Например, дублировать имплементацию БД, очереди, прочего
источник

/

/dev/null in Go-go!
V L
Слишком радикальное заявление. Для небольших/средних проектов layered architecture имеет право быть.
Вы смотрели этот репо?
источник

AK

Anton Kucherov in Go-go!
/dev/null
Вы смотрели этот репо?
Так там не реализовано то о чем дядя Боб говорит. То о чем он говорит, к примеру реализовано в функции io.Copy  (и в пакете io в целом) в стандартной библиотеке Go к примеру.
источник

VL

V L in Go-go!
/dev/null
Вы смотрели этот репо?
Да, там вопросы не к корню репо, а к содержимому пакетов
источник

/

/dev/null in Go-go!
Anton Kucherov
Так там не реализовано то о чем дядя Боб говорит. То о чем он говорит, к примеру реализовано в функции io.Copy  (и в пакете io в целом) в стандартной библиотеке Go к примеру.
эм... так я совсем не это имел ввиду, я написал что так делать не нужно. вообще по этому проекту не понятно что автор пытался туда принести.
источник

Н

Никита in Go-go!
V L
Да, там вопросы не к корню репо, а к содержимому пакетов
Будет хорошо если их адресуете
источник

AK

Anton Kucherov in Go-go!
/dev/null
эм... так я совсем не это имел ввиду, я написал что так делать не нужно. вообще по этому проекту не понятно что автор пытался туда принести.
Я думаю автор практикуется и это хорошо. А так же я думаю автор хочет послушать конкретные проблемы его имплементации, чтобы в будущем стать лучше. На мой взгляд так делать нужно, потому что на ошибках учатся
источник

/

/dev/null in Go-go!
Anton Kucherov
Я думаю автор практикуется и это хорошо. А так же я думаю автор хочет послушать конкретные проблемы его имплементации, чтобы в будущем стать лучше. На мой взгляд так делать нужно, потому что на ошибках учатся
Да я согласен с вами.
источник

/

/dev/null in Go-go!
Никита
Будет хорошо если их адресуете
Посмотрите сюда.
https://github.com/golang-standards/project-layout
Это не священный Грааль но стоит посмотреть на этот подход.
источник

p

pragus in Go-go!
Anton Kucherov
> Руки не доходят до книг по DDD. Как-то, и надобности не ощущается.

Ну и хорошо. Значит нет тех проблем которые этот подход помогает решить. Я вот точно так же не понимаю людей которые постоянно считают аллокации и заморочены на повсеместной оптимизации. И знаете почему? Все просто, я с проблемами оптимизации практически никогда не сталкивался в личном опыте, и это нормально. Столкнусь и сразу руки дойдут.
Можно очень неожиданно столкнуться с ними :) причем, даже не по cpu :)
источник

/

/dev/null in Go-go!
Надеюсь не начнется холивар)
источник

AK

Anton Kucherov in Go-go!
/dev/null
Да я согласен с вами.
Ну и да, я не отрицаю, что возможно того же Мартина, нужно читать имея за плечами определенный опыт, и что вполне возможно то о чем он пишет может повредить при отсутствии опыта.
источник