FAQ
Существует ли тулкит или линтер?
Заголовок раздела «Существует ли тулкит или линтер?»Да! У нас есть линтер Steiger для проверки архитектуры вашего проекта и генераторы папок через CLI или IDE.
Где хранить layout/template страниц?
Заголовок раздела «Где хранить layout/template страниц?»Если вам нужны простые шаблоны разметки, вы можете хранить их в shared/ui. Если вам нужно использовать более высокие слои, есть несколько вариантов:
- Возможно, вам вообще не нужны лейауты? Если макет состоит всего из нескольких строк, разумно будет дублировать код в каждой странице, а не пытаться абстрагировать его.
- Если вам нужны лейауты, вы можете хранить их как отдельные виджеты или страницы, и компоновать их в конфигурации роутера в App. Вложенный роутинг — еще один вариант.
В чем отличие feature от entity?
Заголовок раздела «В чем отличие feature от entity?»Entity — это понятие из реальной жизни, с которым работает ваше приложение. Feature — это взаимодействие, представляющее реальную ценность для пользователей; что-то, что люди хотят делать с сущностями.
Для получения дополнительной информации, а также примеров, см. страницу про слайсы в разделе Reference.
Могу ли я вкладывать страницы/фичи/сущности друг в друга?
Заголовок раздела «Могу ли я вкладывать страницы/фичи/сущности друг в друга?»Да, но это вложение должно происходить в более высоких слоях. Например, внутри виджета вы можете импортировать обе фичи, а затем вставить одну фичу в другую через пропсы/вложение.
Вы не можете импортировать одну фичу из другой фичи, это запрещено правилом импортов для слоёв.
А что с Atomic Design?
Заголовок раздела «А что с Atomic Design?»Текущая версия методологии не обязывает, но и не запрещает использовать Atomic Design вместе с Feature-Sliced Design.
При этом Atomic Design хорошо применяется для ui сегмента модулей.
Есть ли какие-нибудь полезные ресурсы/статьи/т.д. по FSD?
Заголовок раздела «Есть ли какие-нибудь полезные ресурсы/статьи/т.д. по FSD?»Да! https://github.com/feature-sliced/awesome
Зачем мне нужен Feature-Sliced Design?
Заголовок раздела «Зачем мне нужен Feature-Sliced Design?»Он помогает вам и вашей команде быстро ознакомиться с проектом с точки зрения его основных компонентов, приносящих бизнес-ценность. Стандартизированная архитектура помогает ускорить онбординг и разрешать споры о структуре кода. См. страницу Мотивация, чтобы узнать больше о том, почему FSD был создан.
Нужна ли архитектура/методология начинающему разработчику?
Заголовок раздела «Нужна ли архитектура/методология начинающему разработчику?»Скорее да, чем нет
Обычно, если проектировать и разрабатывать проект в одиночку - все идет гладко. Но если появляются паузы в разработке, добавляются новые разработчики в команду - тогда-то и наступают проблемы
Как мне работать с контекстом авторизации?
Заголовок раздела «Как мне работать с контекстом авторизации?»Ответили здесь