-
Notifications
You must be signed in to change notification settings - Fork 13
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Отказаться от сущности element #155
Comments
В доке по аритектуре я может не полностью раскрывал все мысли на этот счет (было давно и я имел мало опыта), но выразил это словом декомпозинг - косяк согалсен. Сейчас уже сложно вспомнить все профиты, но я подскажу, куда копать. Atomic design - в целом как подход для дизайна интерфейсов (и как следствие части дизайна архитектуры представления на фронте). http://atomicdesign.bradfrost.com/chapter-2/ - это из гугла нашел, там схожие термины с архитектурой, которую используют пацаны в Тинькове. Атомы, молекулы, организмы и т.д. |
Дэ, надо будет изучить, здесь вся пачка статей из ресурса выше http://atomicdesign.bradfrost.com/table-of-contents/ |
Мы сейчас разделяем компоненты из shared/view на components и elements. Это течёт отсюда:
но я не вижу в этом смысла.
Декомпозиция на уровни использования между собой не нужна т.к. это не имеет значения при использовании. Нам нужна shared компонента и нам всё равно на каком уровне она находится. Нам приходится об этом думать во время импорта и вспоминать что на каком уровне находится. Делать поиск сначала в components, потом в elements. Думать об этом когда добавляем компоненту, решать на какой уровень добалять. Перемещать эти компоненты между каталогами, когда уровни изменились, править по всем проекту импорты которые зависили от этих уровней.
В моей практике компоненты всегда имели древовидную зависимость и никогда не имели циклическую.
Даже если и возникнет циклическая, то непонятно как это разделение решит проблему.
И в целом, это разделение не сформулировано в полной мере и из него непонятно что куда класть.
The text was updated successfully, but these errors were encountered: