Блокира ли CSSOM рендерирането на страницата? Защо?
Frontend
Опишете критичния път на рендериране на браузъра: от въвеждането на URL в адресната лента до изрисуването на страницата. Разкажете за DNS, TCP, HTTP, изграждане на DOM, CSSOM, Render Tree, Layout и Paint.
Какво е reflow и repaint? Какво е forced reflow (принудително преразглеждане)? Как можем да оптимизираме рендерирането, за да намалим броя на принудителните преразглеждания?
В кои случаи се случва прерисуване (re-render) на компонент в React? Разкажете за reconciliation (съгласуване).
Как да накарам функцията makeBook да връща очакваните стойности 0 и 5 вместо две десетки?
Как може да се реши задача, която се решава чрез наследяване, по алтернативен начин? Какво е композиция в контекста на TypeScript и React?
Вижте функцията makeBook. Определете какво ще се изведе в конзолата на редове 20-21 (две коментирани реда). Обяснете поведението на функцията.
Какви шаблони за дизайн и принципи за качество на кода използвате при разработка с React/TypeScript? Как прилагате принципите SOLID във фронтенд разработката?
Рефактурирайте компонента, който рендерира случайно число (от Promise) и позицията на скрол. Намерете проблемите и ги коригирайте.
Какво е HOC (Компоненти с по-висок ред)? За какво се използват? Дайте примери за използване на HOC в React.
За какво се използват генериците в TypeScript? Как да ограничим генерик към определени типове? Какво е type narrowing и как се реализира?
Как работи Virtual DOM в React? Как React определя реда на изпълнение на операциите при повторно рендиране? Разкажете за React Fiber и планировчика (scheduler).
Какво е CORS? Как работи? Каква е разликата между простите заявки (GET, POST) и предварителните заявки (OPTIONS)? Какво проверява CORS при изпращане на заявка?