У чому різниця між Observable і Promise?
Promise — це одне майбутнє значення, яке починає виконуватись негайно і не може бути скасоване. Observable — потік із нуля або більше значень, лінивий до підписки, скасовуваний через відписку і перетворюваний операторами на кшталт debounce, retry чи switchMap. Для HTTP-запитів практична вигода у скасуванні: підказка в пошуку може відкинути попередній запит, доки користувач продовжує друкувати.