Sobes.tech
Junior — Middle

რომელი ოპერაციები ან მეთოდები განსხვავდებიან იმით, რომ ისინი განმეორებით შესრულებისას სისტემის მდგომარეობას ცვლიან, ხოლო წინა შედეგს არ ინახავენ?

sobes.tech AI

პასუხი AI-სგან

მოქმედებები ან მეთოდები, რომლებიც განმეორებით შესრულებისას სისტემის მდგომარეობას იცვლიან, ხოლო არა მხოლოდ შედეგს აბრუნებენ, სახელწოდებით გვერდითი ეფექტები (side effects).

ასეთი ოპერაციების მაგალითებია:

  • მონაცემების ჩაწერა ან შეცვლა ბაზაში.
  • HTTP მოთხოვნების გაგზავნა, რომლებიც სერვერზე მდგომარეობას იცვლიან.
  • ფაილში ჩაწერა ან ფაილური სისტემის შეცვლა.
  • გლობალური ან სტატიკური ცვლადების შეცვლა.
  • ფუნქციების გამოძახება, რომლებიც იცვლიან ობიექტის ან სისტემის მდგომარეობას.

ტესტირებისას მნიშვნელოვანია განასხვავოთ სუფთა ფუნქციები (მონაცემების გარეშე გვერდითი ეფექტები) და ფუნქციები გვერდითი ეფექტებით, რადგან უკანასკნელთათვის საჭიროია სპეციალური მიდგომა მათი შემოწმებისა და იზოლაციისთვის.