msa6886
@msa6886

Нужно ли создать несколько компонент?

Имеются данные из БД. Список процессоров, список мат. плат, список видеокарт и т.д. (около 30) У каждого устройства разный набор характеристик. Для отображения каждого устройства нужно создать свой компонент или один универсальный компонент для всех устройств?, в котором будет записано много различных условий для отображения той или иной харакетристики + гдето имеется доп информация.
  • Вопрос задан
  • 78 просмотров
Решения вопроса 1
alexey-m-ukolov
@alexey-m-ukolov Куратор тега React
Как хотите, так и сделайте - людям в интернете без разницы, поддерживать этот код будете вы.

С точки же зрения теории есть две противоположных, но одинаково имеющих право на существование, теории: не нужно усложнять и не нужно усложнять.

Первая говорит о том, что не следует плодить сущности без необходимости, т.е. лучше оставить один компонент, если его структуру можно универсально описать. Тогда можно будет легко добавлять новые типы объектов без необходимости изменения кода.
Вторая говорит о том, что сложную задачу следует раздробить на несколько простых. И в этом случае вы делаете простые специализированные компоненты, пусть даже в них будет какое-то дублирование. Тогда можно будет легко разбираться с кодом каждого конкретного типа объектов, но добавление новых потребует изменения кода.
А между этими двумя крайностями есть целый спектр промежуточных решений.

В комментариях, я уверен, найдутся сторонники каждого из подходов и будут объяснять друг другу, что именно их подход является единственно верным. Выберите того, кто кажется вам наиболее убедительным (оба будут неправы, потому что решение зависит от особенностей конкретного проекта) и поступите как он советует. По мере создания всё новых и новых проектов вы будете понимать ограничения выбранного подхода и проблемы, которые он создаёт и попробуете диаметрально противоположный. Потом вы увидите и его ограничения и с этого момента можете добавлять в резюме приставку senior.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Alexandroppolus
@Alexandroppolus
кодир
Зависит от того, насколько различаются представления устройств и их наборы пропсов. Если сильно, то лучше разные компоненты, иначе утонешь в аццких тернарниках внутри tsx.
Возможен "компромиссный" вариант, когда для группы "похожих" устройств используется один компонент, а для прочих - другой(другие).
С технической точки зрения, если компоненты разные, то при смене типа устройства будет перемонтирование, иначе обновление.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы