Возникновение парадигм программирования


Download 231.82 Kb.
Sana07.12.2022
Hajmi231.82 Kb.
#975067
Bog'liq
PacFQWTC7t6N8JZqtv0TITPgDAAoHQpCegyJyXJ1
Брошюра, 2 5213178059175234121, Kutubxonashunoslik madaniyati, 002002, 8781-Article Text-34080-1-10-20160109, falsafa amaliy topshiriq 2, 3.çáΣáα«í«ñ 1-¿ε½Ω σ«½áΓ¿úá, iqtisodiyotda pul va tovar, Davlat test markazi state testing centre under the cabinet of mi, 1654848187 (2), 1667366650, xfgyw6262b3ue7, mustaqil ish, ,,mustaqil ish 13 kiber

Dasturlash usullari va paradigmalari Ma'ruza Funksional dasturlash. Yuqori tartibli funksiyalar. Toza funksiyalar. Rekursiya.

DASTURLASH PARADIGMASI


Imperativ
Protsessual
Ob'ektga yo'naltirilgan
Parallel ishlov berish usuli
Ma'lumotlar bazasi/ma'lumotlarga
asoslangan dasturlash yondashuvi
Funktsional dasturlash
Mantiqiy dasturlash
Deklarativ

Funktsional dasturlash paradigmasi

  • Funktsional dasturlash paradigmasi - bu dasturning global kontekstiga ta'sir qilmaydigan alohida kod bloklaridan (funktsiyalardan)tashkil topgan dasturni tavsiflash usuli. Funktsional tillarda dastur bloklari yoki kod bo'limlarini bajarish ketma-ketligini kompilyator tomonidan belgilanadi. Dasturchining vazifasi OOP yoki protsessual tillarda amalga oshirilishi mumkin bo'lgan qisman emas, balki butun dastur darajasida ma'lumotlar va funktsiyalar o'rtasidagi o'zaro ta'sirni tasvirlashdir.

Funktsional dasturlashning asosiy tushunchalari

  • Funktsional dasturlashni paradigma va algoritmlarni yaratish uslublari quyida keltirilgan:
  • Funktsiya yoki aniqlangan kod bloki. Bu funktsional dasturlashning asosi hisoblanadi. Funktsiya - bu bir yoki bir nechta tushunchalardan iborat kod blokidir. Funktsional tillarda har bir gap funksiyaga aylanadi. Butun algoritm ularning tavsifi va kirituvchilaridan iborat hamda barcha dasturlar alohida kichik bloklardan iborat. Katta bloklar ko'plab kichik bloklardan tashkil topgan.
  • Sof funktsiyalar. Faqat o'z kontekstini boshqaradigan va butun dasturning global kontekstiga (holatiga) ta'sir qilmaydigan kod bloklari.

3. Lambda funktsiyalari. Bu anonim funktsiyalar yoki lambda iboralari bo'lib, ma’lumotlar sifatida yozilgan va ular qo'llaniladigan kontekst joyida e'lon qilingan. Ular nomlar bilan aniqlanmaydi va boshqa funktsiyalar tomonidan avtomatik ravishda chaqiriladi. Lambda iboralari funksiyalarning qisqartmasi hisoblanadi.

3. Lambda funktsiyalari. Bu anonim funktsiyalar yoki lambda iboralari bo'lib, ma’lumotlar sifatida yozilgan va ular qo'llaniladigan kontekst joyida e'lon qilingan. Ular nomlar bilan aniqlanmaydi va boshqa funktsiyalar tomonidan avtomatik ravishda chaqiriladi. Lambda iboralari funksiyalarning qisqartmasi hisoblanadi.

4. Yuqori tartibli funktsiyalar. Boshqa funktsiyalarni boshqaradigan funktsiyalar. Ularning argumentlari anonim va sof funktsiyalar hisoblanadi shuningdek, asosiy funktsiyani bajargandan so'ng, natija sifatida qaytarilishi mumkin.

5. Kompozit funksiyalar. Bitta blok boshqasi tomonidan qaytarilgandan so’ng natijaga ta'sir qiladi.

6. Konstantalar. Funktsional dasturlash tillaridagi o'zgarmas konstantalar mavjud.

7. Yopishlar. Blok tanasini boshqasining kontekstida aniqlash. Mahalliy funktsiya vorislik ma'lumotlariga kirish huquqiga ega va har safar chaqirilganda qayta aniqlanadi.

7. Yopishlar. Blok tanasini boshqasining kontekstida aniqlash. Mahalliy funktsiya vorislik ma'lumotlariga kirish huquqiga ega va har safar chaqirilganda qayta aniqlanadi.

8. Rekursiya. Funktsional tillarda rekursiya sikllar o‘rnini bosuvchi vazifasini bajaradi. Bu o'z kontekstida o'ziga funksiya chaqiruvidir. Bunday chaqiruvlar nazorat sharti rost bo'lgunga qadar takrorlanadi.

Funktsional dasturlashning xususiyatlari

  • Dasturlashning funktsional uslubi va qat'iy qoidalarga asoslangan paradigmalari mavjud. Funktsional tillar funktsional dasturlashning paradigmasini barcha dasturlash tillari qo'llab-quvvatlaydi. Imperativ dasturlashda (protsessual yoki OOP) ko'p paradigma uslubida dasturlash mumkin. Ya'ni, dasturlarni tavsiflashda turli uslublardan foydalaniladi.

Bu funksiyalarning bajarilish tartibi, bunda bir funksiyadan olingan natija boshqasiga uzatiladi. Natijada, dasturchi bloklarning butun zanjirini ishga tushiradi, bu esa bitta natijaga olib keladi. Zanjirni yuqori tartibli funktsiya tanasida ularning bajarilishi ketma-ketligini qayd etish orqali tashkil qilish mumkin.

Imperativ va deklarativImperativ

  • Imperativ-yondashuv muammoni qanday hal qilish yo’llari haqida ma’lumot beradi.
  • Deklarativ – biz qanday natija olishimiz haqida ma’lumot beradi.

Deklarativlikka kodni funktsiyalarga kiritish orqali erishish mumkin:


Download 231.82 Kb.

Do'stlaringiz bilan baham:




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