Size: a a a

Software Design/Architecture/Zen

2021 November 23

E

Emanresun in Software Design/Architecture/Zen
не проще будет читаться?
источник

SP

Sergey Protko in Software Design/Architecture/Zen
у тебя есть экшены эффекты ивенты
источник

SP

Sergey Protko in Software Design/Architecture/Zen
ну опять же зависит от кейса но крайне мало такого на фронте происходит что тебе нужно что-то типа понятия юзкейса
источник

SP

Sergey Protko in Software Design/Architecture/Zen
если у тебя есть под рукой пример "бизнес логики" которая размазана по "слоям"
источник

SP

Sergey Protko in Software Design/Architecture/Zen
то можно было бы оттуда подступиться
источник

E

Emanresun in Software Design/Architecture/Zen
под рукой нет, но сейчас в хуках например основная "бизнес логика" собирается и она привязывается к реакт/вуй апи
источник

SP

Sergey Protko in Software Design/Architecture/Zen
ну вот приведи пример бизнес логики, вдруг там "достать данные из формочки"
источник

E

Emanresun in Software Design/Architecture/Zen
похоже надо пробывать вытаскивать во что-то вроде эффектора и его прицеплять к комосэйблу/хуку
источник

SP

Sergey Protko in Software Design/Architecture/Zen
условно у меня под рукой есть "бизнес логика определения уровня громкости у собеседника что бы понять он молчит или говорит"
источник

SP

Sergey Protko in Software Design/Architecture/Zen
или "бизнес логика построения динамических форм с услояимями всякими и прочим где строится граф зависимостей между вопросами и куча хитрой херни"
источник

SP

Sergey Protko in Software Design/Architecture/Zen
и все это не на уровне хуков
источник

SP

Sergey Protko in Software Design/Architecture/Zen
хуки больше как клей или для всякой UI логики постенькой
источник

E

Emanresun in Software Design/Architecture/Zen
где тогда это хранить и как
источник

SP

Sergey Protko in Software Design/Architecture/Zen
есть разные варианты. По дефолту конвеншен который я сча навязываю команде это "сделайте файлик Types.ts для описания общих типов в пределах фичи и Model.ts для всяких там сторов ивентов эффектов эффектора и там храните логику". При этом если фича большая и хочется больше декомпозировать все это - никто не мешает разбивать логику. Например в фиче "звонки" у меня будут какие-нибудь Participants папка в которой лежат те же Model.ts, Types.ts и т.д. мне нужен оч тупой конвеншен который удобно соблюдать по сути

Можно сделать папку Model и внутри дробить логику по модулям. опять же главный движетель это SRP/Information hiding
источник

E

Emanresun in Software Design/Architecture/Zen
во, супер
источник

SP

Sergey Protko in Software Design/Architecture/Zen
я лично предпочитаю более осмысленные названия но это сильно увеличивает когнетивную сложность и разработчики тратят мыслетопливо думая как назвать файлик а не важные вопросы вроде "нахуй мне это надо". Потому нужны тупые конвеншены которые форсят важные ограничения.
источник

SP

Sergey Protko in Software Design/Architecture/Zen
пусть хотя бы названия сторов и ивентов нормальными делают
источник

SP

Sergey Protko in Software Design/Architecture/Zen
а файлик пусть будет model.ts
источник

E

Emanresun in Software Design/Architecture/Zen
как дергать эту логику в модельсах
источник

SP

Sergey Protko in Software Design/Architecture/Zen
в смысле?
источник