TGStat
TGStat
Введите текст для поиска
Расширенный поиск каналов
  • flag Russian
    Язык сайта
    flag Russian flag English flag Uzbek
  • Вход на сайт
  • Каталог
    Каталог каналов и чатов Региональные подборки Тематические подборки Платные каналы Поиск каналов
    Добавить канал/чат
  • Рейтинги
    Рейтинг каналов Рейтинг чатов Рейтинг публикаций
    Рейтинги брендов и персон
  • Аналитика
  • Поиск по публикациям
  • Мониторинг Telegram
  • Продвижение
    Реклама через Яндекс Бизнес Реклама в каналах через TGStat Agency Реклама на сайте TGStat.ru
Кодовая база

13 Aug, 10:56

Открыть в Telegram Поделиться Пожаловаться

Как я с React на Svelte перешла

Бытует мнение, что фронтенд-фреймворк — как факультет в Хогвартсе, выбирается один раз и на всю жизнь. Потому что разный синтаксис, разная экосистема, и вообще переходить с одного фреймворка на другой якобы очень сложно.

Сложность перехода между фрейморками —  вредный миф. Подозреваю, что придумали его ребята, которые в 2021 году говорили “я не буду учить JavaScript, я же пишу на React”. Фреймворк — это инструмент, который берет часть задач JavaScript-разработчика на себя, а не отдельная профессия, которую надо месяцами учить. Учить надо программирование и основные концепции разработки, а конкретный фреймворк можно освоить за неделю-две.

Я совершала переход между фреймворками дважды. В 2019 я, имея опыт только на Vue, получила оффер в проект на React, а в прошлом году пришла в команду, которая пишет на Svelte. Где-то между делом года четыре назад я немного соприкасалась с Angular, так что, в целом, у меня есть опыт со всеми популярными фронтенд фреймворками. 

Современные фронтенд-фреймворки имеют схожие концепции:
Реактивность. Вы перезаписываете данные, а UI обновляется сам. Не нужно редактировать DOM-элементы.
Код делится на переиспользуемые компоненты: кнопки, таблицы, панели, формы и т. д.
Внутреннее состояние (state/signal), входные данные (props/input), эффекты.

Написание кода на фронтенд фреймворках сводится к следующему: вы разбиваете код на компоненты, в которых храните состояние аналогично проперти классов в ООП, используете эффекты для подписок на изменение состояния (Оbserver), пропсы для передачи данных вниз и события для передачи данных наверх. Интерфейс будет обновляться самостоятельно — таким образом, вам нужно следить только за организацией данных. 

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

Конечно, к фреймворку привыкаешь. Когда я начала писать на Svelte, первые пару недель мне было немного неудобно. Потом я поняла, в чем дело: в React единица реактивности — это компонент, он ререндерится весь целиком. В Svelte единица реактивности — это сигнал. В компоненте может быть много сигналов и они все будут перевычисляться независимо. Поэтому привыкаешь мыслить более мелкими абстракциями. Но каждый раз при смене фреймворка я не училась программировать заново — я всего лишь читала документацию и привыкала к новому инструменту.

Кстати, документацию можно прочитать за один вечер 🙂

🔜 Канал в MAX

798 0 5 14 43
Каталог
Каталог каналов и чатов Подборки каналов Поиск каналов Добавить канал/чат
Рейтинги
Рейтинг каналов Telegram Рейтинг чатов Telegram Рейтинг публикаций Рейтинги брендов и персон
API
API статистики API поиска публикаций API Callback
Наши каналы
@TGStat @TGStat_Chat @telepulse @TGStatAPI
Почитать
Академия TGStat Исследование Telegram 2019 Исследование Telegram 2021 Исследование Telegram 2023
Контакты
Справочный центр Поддержка Почта Вакансии
Всякая всячина
Пользовательское соглашение Политика конфиденциальности Публичная оферта
Наши боты
@TGStat_Bot @SearcheeBot @TGAlertsBot @tg_analytics_bot @TGStatChatBot