აპლიკაციის მდგომარეობის მართვა Subject-ებით
აპლიკაციის state-ის, ანუ მისი მდგომარეობის მენეჯმენტი გულისხმობს ისეთი ცვლადების მართვას, რომელიც აპლიკაციაში მუდმივად იცვლება სხვადასხვა ფაქტორების გამო.
მარტივად რომ ვთქვათ, აპლიკაციის სთეითის ნაწილია ყველაფერი, რაც შეიძლება შეიცვალოს. აპლიკაცია რომ ლიფტი იყოს, რომელსაც ჩვენი გადაყვანა შეუძლია ერთი სართულიდან მეორეზე, მაშინ მისი სთეითი, ანუ მდგომარეობა შეიძლება იყოს შემდეგი:
- მოძრავია თუ უძრავი
- თუ უძრავია, რომელ სართულზეა გაჩერებული
- თუ მოძრავია, ზემოთ მიდის თუ ქვემოთ
- დატვირთულია თუ არა ის ადამიანებით
- რამდენი ადამიანი იმყოფება მასში
- და სხვა
აპლიკაციაშიც, შესაბამისად სთეითი შეიძლება იყოს მომხმარებლის პირადი ინფორმაცია, რომელიც გვერდზეა განთავსებული, პროდუქტები, რომლებიც მის საშოპინგო კალათშია გამოსახული, კატეგორია, რომლის მიხედვითაც პროდუქტებია გაფილტრული და ა.შ.
ვინაიდან ეს ყველაფერი მომხმარებლის მოქმედებების მიხედვით შეიძლება შეიცვალოს, ანგულარ დეველოპერები მივმართავთ RxJS-ს რათა აპლიკაცის სთეითი (ან მისი ცალკეული ნაწილები) გავხადოთ სტრიმი, რომელიც მომხმარებლის მოქმედებების მიხედვით ახალ მნიშვნელობებს გასცემს. ეს არ არის ერთადერთი მიდგომა სთეით მენეჯმენტისთვის, შესაძლებელია საერთოდ არ გამოვიყენოთ RxJS თუმცა ანგულარში ყველაზე გავრცელებული მიდგომა ეს არის. ამ მიდგომას ხშირად მოიხსენებენ როგორც “რეაქტიულ პარადიგმას”.
ამ თავში შევქმნით მარტივ “To Do” აპლიკაციას, სადაც გასაკეთებელი საქმეების სიის სთეითს ვმართავთ RxJS-ის Subject-ების საშუალებით.