Size: a a a

Software Design/Architecture/Zen

2020 October 30

ЕР

Евгений Ромашкан... in Software Design/Architecture/Zen
Сергей Предводителев
InMemory - оно конечно, в рамках неймспейса может быть хорошо, если это в какому нибудь неймспейсе Post/Repository/. Но вот при использовании вполне возможно придется алиасы использовать, что не удобно.

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

PostRepository::class => InMemory::class,
CommentRepository::class => InMemory::class,


не выйдет, то есть будут алиасы:

PostRepository::class => InMemoryPostRepository::class,
CommentRepository::class => InMemoryCommentRepository::class,


То есть проще сразу назвать InMemoryPostRepository и InMemoryCommentRepository.
Можно указывать неймспейс в конфиге
источник

СП

Сергей Предводителев... in Software Design/Architecture/Zen
Евгений Ромашкан
Можно указывать неймспейс в конфиге
Да, можно.  Может конечно дело вкуса. Мне без указания что это репозиторий не удобно использоваться.
InMemoryPostRepository приятнее, чем InMemory :)
источник

T🐜

The Ant 🐜 in Software Design/Architecture/Zen
Сергей Предводителев
Доброе утро!

Как считаете, имеет ли смысл для интерфейсов делать суффикс Interface?
Например, PostRepositoryInterface.
Называй iPostRepository как все нормальные люди :D
источник

AD

Apache DOG™ in Software Design/Architecture/Zen
Сергей Предводителев
Доброе утро!

Как считаете, имеет ли смысл для интерфейсов делать суффикс Interface?
Например, PostRepositoryInterface.
нет
источник

AD

Apache DOG™ in Software Design/Architecture/Zen
Точно так же как и суффиксы Factory, Singleton, Bean
источник

EE

Evgenii Evgenivich in Software Design/Architecture/Zen
У нас теперь 'i' не показатель интерфейса? 😱
источник

AD

Apache DOG™ in Software Design/Architecture/Zen
префикс Abstract
источник

AD

Apache DOG™ in Software Design/Architecture/Zen
вещи бессмысленные, эта инфа есть в типе
источник

EE

Evgenii Evgenivich in Software Design/Architecture/Zen
@apache_dog  и base?
источник

AD

Apache DOG™ in Software Design/Architecture/Zen
ДА
источник

EE

Evgenii Evgenivich in Software Design/Architecture/Zen
Base же тож плохо
источник

EE

Evgenii Evgenivich in Software Design/Architecture/Zen
О да
источник

EE

Evgenii Evgenivich in Software Design/Architecture/Zen
Common еще кста...
источник

AD

Apache DOG™ in Software Design/Architecture/Zen
все баззворды, не смотря на то что умножают значимость писателя на 2 за каждое слово, но они бесполезны
источник

AD

Apache DOG™ in Software Design/Architecture/Zen
The Ant 🐜
Называй iPostRepository как все нормальные люди :D
PostRepository  и DefaultPostRepository/MockPostRepository для имплементаций
источник

AD

Apache DOG™ in Software Design/Architecture/Zen
так код короче
источник

AD

Apache DOG™ in Software Design/Architecture/Zen
и семантика не пострадала
источник

AD

Apache DOG™ in Software Design/Architecture/Zen
С# IBlaBlaBla это одна из наибольшей придури в дизайне ЯП что я видел
источник

A

Artur in Software Design/Architecture/Zen
Я бы забил на интерфейсы и две реализации, сделал бы один класс PostsRepository. В в тестах бы использовал ин мемори бд типо sqlite
источник

A

Artur in Software Design/Architecture/Zen
Проблема решена, минимум кода, минимум проблем
источник