tgoop.com/prog_way_blog/236
Last Update:
Общие комментарии
1. Используйте TypeScript, на современном рынке даже джуну уже не достаточно примитивных знаний TS — большинство компаний требуют хороший опыт работы с типами, понимание дженериков и прочих не самых примитивных тем
2. Выносите хотя бы ёмкие константы куда-то из файла компонента, чтобы до самого компонента не приходилось листать 100+ строк при открытии файла
3. Выносите из компонента все независимые от его состояния сущности — в константы, в утилсы и в любое другое подходящее место. Это упростит чтение кода и зафиксирует ссылки
4. Не стесняйтесь создавать свои хуки, это ок. Есть примеры, где вызов useEffect
достигает 50+ строк. Вынесите/разбейте, ничего страшного в этом нет
5. Очень много непонятных закомментированных частей кода в некоторых проектах. Комментируете = не надо = удаляете, восстановить всегда можно через гит
6. Используйте index
файлы для организации импортов, это делает импорты короче и читабельнее, а также позволяет проще управлять интерфейсом части кода. Используя index файл, вы явно определяете что можно импортировать, а что нельзя. Подробнее на доке
7. Аккуратнее с инлайн стилями. Их можно использовать, но очень аккуратно и в крайних случаях. ИМХО лучше !important
поставить, чем инлайнить. Ну а если используйте, то не пишите стили прямо в вёрстке. 99% случаев, которые я видел, не зависят от состояния компонента, так что можно легко создать константу вне компонента и зафиксировать ссылку на объект, что может быть очень полезно и в целом разгрузит вёрстку
8. Не используйте классовые компоненты, если в этом нет явной необходимости. Мир функциональных компонентов уже непобедим
9. Не храните ключи и прочие переменные в коде, используйте переменные окружения. Из кода можно легко компрометировать все ваши ключи, тем более проекты лежат в открытом доступе
10. Не нужно оборачивать в memo
, useMemo
, useCallback
абсолютно всё. В ревью видел много мест, где memo
используется там, где компонент имеет 1 рендер за весь жизненный цикл и без него, а useCallback
скорее замедляет приложением, чем оптимизирует
11. Можно смириться с одним тернарным оператором в вёрстке, но когда их в одной конструкции сразу два… три… такое мы рефакторим обычными if-ами)
Отдельные посты по этому ревью будут выходить с завтрашнего дня
@prog_way_blog — чат — #review
BY progway — программирование, IT
Share with your friend now:
tgoop.com/prog_way_blog/236