Intern
Proqramda yığın nə üçün istifadə olunur?
sobes.tech Süni İntellekt
AI-dan cavab
Yığın, proqramın yaddaşını və icra axınını idarə etmək üçün istifadə olunur.
Əsas vəzifələr:
- Yerli dəyişənlərin saxlanması: Funktsiyalar və ya kod blokları daxilində elan olunan dəyişənlər yığına yerləşdirilir və sahələrinin sonunda avtomatik olaraq sərbəst buraxılır.
- Funktsiyaların çağırışlarının idarə olunması: Bir funksiya çağırıldıqda, geri dönüş ünvanı, arqumentlər və yerli dəyişənlər yığına qoyulur. Geri dönüşdə, bu məlumatlar bərpa olunur.
- İcra kontekstinin saxlanması: Yığın proqramın hazırkı vəziyyəti haqqında məlumat saxlayır və iç-içə çağırışlar və rekursiyanı düzgün idarə etməyə imkan verir.
- Undo/redo mexanizmi: Bəzi hallarda, yığın əməliyyatların ləğvi/yenidən həyata keçirilməsi funksionallığını həyata keçirmək üçün istifadə oluna bilər, vəziyyət tarixçəsini saxlayaraq.
Funktsiya yığın çərçivəsinin nümunəsi:
// `myFunction(a: Int)` funksiyası çağırıldıqda yığının görünüşü
// Geri dönüş ünvanı (myFunction icra edildikdən sonra haraya qayıtmaq)
// `a` arqumentinin dəyəri
// myFunction-un yerli dəyişənləri
Yığının xüsusiyyətləri:
- LIFO (Last-In, First-Out): Ən son əlavə olunan element ilk çıxarılır.
- Sabit ölçülü: Adətən, yığın məhdud ölçüyə malikdir, sistem tərəfindən müəyyən edilir. Yığın daşması (Stack Overflow) çox dərin və ya sonsuz rekursiv çağırışlar, əsas hal olmadan baş verir.
- Tez yaddaş ayırması/azad edilməsi: Yığınla işləmək çox sürətlidir, çünki elementlər bir uclu (yuxarı) əlavə və silinir.
iOS inkişafında, yığın aktiv şəkildə yaddaş idarəçiliyi üçün istifadə olunur, Swift və Objective-C-də metodlar və funksiyalar icra edilərkən. Yerli dəyişənlər və funksiyaların parametrləri yığına yerləşdirilir. Bu, sinif obyektləri və digər dinamik olaraq ayrılmış məlumatlar üçün istifadə olunan yığın (heap) yaddaşından fərqlidir.