TGViewer
Типичный программист Типичный программист @tproger · 78K subscribers
Post #14915 5.08K
Ускорение просмотра изменений в GitHub через упрощение компонентов React

Одна строка кода во вкладке Files changed могла нести больше 20 обработчиков событий. На тысячах строк цена такой архитектуры росла: интерфейс тормозил, память уходила на повторяющиеся компоненты.

Команда GitHub упростила дерево React и передала обработку событий общему обработчику: он определяет строку по атрибутам HTML-элемента. Состояние комментариев и меню перенесли в дочерние компоненты, которые появляются по необходимости.

В разборе оптимизации есть замеры: на 10 000 изменённых строк задержка от действия до обновления экрана снизилась примерно с 450 до 100 мс. Тест проводили на MacBook Pro M1 с четырёхкратным замедлением. Для самых крупных изменений понадобилось ещё и отображать только видимые строки; этот подход тоже разобран в материале.

#веб
  • ❤ 5
  • 👍 4
  • 😐 2
  • 👏 1
  • 🎉 1
  • 🤣 1
  • 🍌 1
  • 👨‍💻 1
  • 🎃 1
  • 💘 1
More from @tproger
  1. Oct 13, 2026Сжатие временных рядов в Axiom: меньше места на диске, больше работы процессору Gorilla сж…
  2. Oct 13, 2026Gran Turismo 4 переехала в Chrome — с гонками, звуком и сохранениями В PS2 Web Recomp стар…
  3. Oct 13, 2026Миллион запросов в секунду мимо общего балансировщика Сто микросекунд задержки выглядят ме…
  4. Oct 13, 2026Как метрики помогли найти ошибку в ИИ-оценщике размера видео Cliparr обещал один размер ви…
  5. Oct 12, 2026Разработчик превратил Wi-Fi роутер в программируемый радиоприёмник Автор написал собственн…
  6. Oct 12, 2026Cookies удалены, а браузер всё ещё узнают Удаление cookies не обязательно делает браузер н…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →