Втората част от задачата по TypeScript: преобразувайте всички полета на обекта от тип Delivery в нов тип, използвайки утилитарните типове на TypeScript.
Frontend
Въз основа на типа Delivery създайте нов тип, където полетата name, address и date стават по избор. Кой вграден помощен тип на TypeScript бихте използвали?
Кои статични методи на Promise знаете освен Promise.resolve? Какво е разликата между Promise.all и Promise.allSettled?
Защо отделихте заглавието на чата в отделен виджет? По какъв критерий определяте какво е виджет и какво не?
Как бързо да увеличите броя на ролките от 3 до 10 в текущата реализация, като създадете константа с необходимото количество и динамично формирате масивите и рендерите барабаните?
[име] попита: разкажете ми за вашия опит, защо решихте да напуснете текущото си място и какво очаквате от новото?
Как да презапишете контекста (this) вътре във функцията loadScript, ако тя е метод на клас и трябва да се извика с друг this?
// Създайте тип, който съдържа същите полета като Delivery, // но всички полета са опционални (могат да имат стойност undefined) и не могат да променят стойностите си.
На какво ще бъде равен this вътре във функцията, ако я извикаме чрез fn.call(this) в браузъра — в обичаен режим и в строг режим?
Защо избрахте WebSocket? Има ли алтернативи?
Дадени са три нови типа. Трябва да се създаде нов тип въз основа на тях, който отговаря на условието (съдържа всички полета на дадените типове, тип-обединение). Какъв подход трябва да се използва?
Опишете API-те, които ще ни трябват (getUsers, getChat, sendMessage и други). Кои от тях ще работят чрез REST, а кои чрез WebSocket?
Какво ще се случи, ако вместо обратен повикване предадете clearCache като директна препратка към метода cache.clear (без затваряне)? Защо това няма да работи и как да го поправите (например, чрез bind)?
Как да направите един HTTP заявка и да се абонирате за резултата му няколко пъти?
Какво е CDN? Как статиката стига там? Как клиентът разбира към кой CDN сървър да се обърне?
Вижте кода: защо компонентът App ще се презареди при кликване върху бутона 'Render', и защо компонентът Child ще се презареди при въвеждане на текст в input?
Напишете тестови случаи за проверка на функцията за мемоизация (например, за функция за степенуване).
Как ще работи репликацията на базата данни (master-slave)? Как ще насочва load balancer-ът заявките към различни сървъри с различни бази данни?
Трябва ли да използвате Angular Signals в компонент вместо Input и Observable потоци? Обосновете решението си.
Създайте нов тип въз основа на типа Delivery, където полетата name, address и date стават по избор (Partial).