«Ммм .. правда ?? Имеет ли значение структура папок? » было бы правильной реакцией со стороны любого начинающего разработчика reactjs, но после большого количества экспериментов я бы сказал большое ДА. Архитектурно это имеет огромное значение.

Фактически, в Интернете есть несколько статей, в которых предлагается их метод как лучший способ упорядочивания файлов. Все, что я понял, это то, что это зависит от жизненного цикла программного обеспечения, в котором участвует разработчик, и я бы не назвал свой метод лучшим или просто одним из лучших.

Учтите, принцип атомарного дизайна: это красиво. Он обладает такими преимуществами, как возможность многократного использования разработанного компонента и простота обслуживания.

Это предпочтительный шаблон, когда у разработчика достаточно времени, чтобы уложиться в сроки, и когда клиент беспокоится на уровне компонентов. Но что, если вам нужно разработать более 30 рабочих веб-страниц в месяц? Вы выберете атомарный дизайн? НЕЕЕТ !!

Ниже приведен пример структуры папок атомарного дизайна:

Давайте посмотрим на наихудший сценарий, рассмотренный в предыдущем разделе. Для такого сценария, когда разработка следует методологии жизненного цикла Agile, одной из наиболее предпочтительных структур папок является Структура стиля домена. Он лучше всего подходит для более быстрой и простой разработки и тестирования.

Ниже приведен пример структуры папок в стиле домена:

А как насчет ситуации, когда вам нужно разработать только несколько компонентов, может быть, небольшое веб-приложение, такое как личный блог-сайт? Здесь меньше компонентов, меньше обслуживания, меньше обработки данных и состояния, тогда предпочтительной структурой папок является Rail style (стиль Ruby on Rails).

Ниже приведен пример структуры папок в стиле Rail:

Резюме

Структура папок многое говорит о вашем проекте - не только о количестве проделанной работы, но и о ее влиянии на саму архитектуру приложения. Состояние обработки играет огромную роль в выборе правильной структуры папок для вашего проекта. Выбирай с умом.