Iterator bu murakkab to'plamni amalga oshirish tafsilotlarini oshkor qilmasdan ketma-ket o'tishga imkon beradigan xatti-harakatlar modeli. Umumiy ma'lumot


Download 293.02 Kb.
bet1/4
Sana22.04.2023
Hajmi293.02 Kb.
#1379365
  1   2   3   4
Bog'liq
Mustaqil ish.


Iterator - bu murakkab to'plamni amalga oshirish tafsilotlarini oshkor qilmasdan ketma-ket o'tishga imkon beradigan xatti-harakatlar modeli.


Umumiy ma'lumot

"Iterator" dizayn namunasi to'plamning (agregatning) barcha elementlariga uning ichki tuzilishini oshkor qilmasdan ketma-ket kirish uchun mo'ljallangan. Bu mashhur "To'rtta to'da" kitobida tasvirlangan klassik dizayn naqshlaridan biri bo'lib, uzoq vaqt davomida samarali va hayotiy ekanligini isbotladi. Ushbu naqshning ahamiyati va amalga oshirish xususiyatlari aniq dasturlash tiliga bog'liq, ammo u yoki bu shaklda u ko'pgina zamonaviy tillar va kutubxonalarda mavjud.


"Iterator" dizayn naqshining umumiy ko'rinishi 1-rasmda ko'rsatilgan.



Turli tillarda va muhitda iteratorlar turli funktsiyalarni qo'llab-quvvatlaydi. Bir yo'nalishli va ikki tomonlama iteratorlar mavjud, ba'zi iteratorlar to'plam elementlarini o'chirish yoki o'zgartirish imkonini beradi; Aksariyat tillarda, agar to'plam olingandan so'ng o'zgartirilsa, iterator yaroqsiz hisoblanadi (masalan, elementlar qo'shilganda yoki o'chirilganda; garchi bu to'plam turiga emas, balki tilga bog'liq bo'lsa ham).


Biroq, Microsoft tomonidan C # dasturlash tilida va .Net platformasida qo'llaniladigan terminologiya umumiy qabul qilingan terminologiyadan biroz farq qiladi. Shunday qilib, IEnumerable interfeyslari (System.Collections nom maydoni) va bir xil interfeysning umumlashtirilgan versiyasi IEnumerable (System.Collections.Generics nomlar maydoni) Bir yo'nalishli Iterator dizayn naqshini amalga oshirish uchun asosiy vosita sifatida ishlatiladi. Boshqa tomondan, ikkinchi versiyadan boshlab, C # dasturlash tilida "iterator" deb nomlangan yangi til xususiyati paydo bo'ldi. Bu xususiyat C# dasturlash tilida Iterator bloki yordamida amalga oshiriladi, lekin aslida bu xususiyat Iterator dizayn naqshini ham, Generator dizayn naqshini ham amalga oshirish uchun ishlatilishi mumkin. Shuning uchun, keyingi maqolada, agar buning aksi aytilmagan bo'lsa, "iterator" atamasi dizayn naqshini emas, balki dasturlash tilining imkoniyatlarini anglatadi.





Download 293.02 Kb.

Do'stlaringiz bilan baham:
  1   2   3   4




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling