Amaliy ish 2 316-21-guruh talabasi Bajardi: Abdurashidov Bexruz Tekshirdi


Download 113.77 Kb.
Sana04.11.2023
Hajmi113.77 Kb.
#1745872
Bog'liq
Paradigmalar amaliy 12


O‘ZBEKISTON RESPUBLIKASI AXBOROT TEXNOLOGIYALARI VA
KOMMUNIKATSIYALARINI RIVOJLANTIRISH VAZIRLIGI
MUHAMMAD AL-XORAZMIY NOMIDAGI
TOSHKENT AXBOROT TEXNOLOGIYALARI UNIVERSITETI

Dasturlash uslublari va paradigmalar fanidan


Amaliy ish 2


316-21-guruh talabasi
Bajardi: Abdurashidov Bexruz
Tekshirdi: Otaxonova B.


Toshkent 2023

Funksional dasturlash (yoki funksional tuzatish) dasturlash paradigmasi bo'lib, ushbu dasturlash usullarida dasturlarni funksiyalar (funksiyalar to'plami) sifatida ifodalashni o'rganuvchilar uchun qulay bo'lgan, matematik adabiyotlarda mashxur bo'lgan bir metodologiyadur. Funksional dasturlashda, dastur funksiyalarni o'z ichiga oladi va ularga boshqa funksiyalarni argumentlar (kirish ma'lumotlar) sifatida o'tkazish mumkin.

Bu dasturlash paradigmasi tushunchalarini o'rganish uchun quyidagi muhim nuktalarni tushunish kerak:

Funksiyalar


- Funksiya: Bu, dasturning boshqa dasturlarga o'xshash bo'lib, biror amallarni bajaruvchi bo'limdir. Funksiyalar o'zgaruvchilarni o'z ichiga oladi va kelgusi dasturlar uchun ma'lumot qaytaramiz.
- Anonim funksiya (lambda funksiya): Bu, nomi yo'q, biror joyda ishlatiladigan funksiya. Odatda qisqa va oddiy funksiyalarni yaratishda foydalaniladi.

Funksional dasturlashning asosiy printsipi


- Immutability (o'zgarmaslik): Funksional dasturlashda, o'zgaruvchilarni o'zgartirish mumkin emas. Agar o'zgartirish kerak bo'lsa, yangi o'zgaruvchi yaratiladi.
- First-class and higher-order functions (birinchi sinf va yuqori tartibdagi funksiyalar): Funksiyalar o'zgaruvchi sifatida o'tkazilishi, funksiyalarni boshqa funksiyalar argument sifatida olishi va funksiyalar qaytarishi mumkin.
- Pure functions (suhbatdosh funksiyalar): Funksiya har doim boshqa funksiyalar kabi tuzatilgandagi argumentlar orqali javob qaytaradi. Ularni chaqirishda tashqi o'zgaruvchilardan, masalan, fayllardan yoki tarmoqdan foydalanish mumkin emas.

Funksional dasturlash tillari


- Functional languages (funksional tillar): Haskell, Lisp, Scheme, Clojure, Erlang, Scala, Kotlin, Swift va Python (functools moduli orqali).
- Functional programming features in non-functional languages (funksional dasturlash xususiyatlari non-funksional tillarda): Java, JavaScript, C#, Python, Ruby, Swift, Kotlin, Scala kabi tillarda funksional dasturlashning imkoniyatlari mavjud.

Funksional dasturlash paradigmasi kompleks dasturlarni oddiy, solishtirilgan va solishtirilgan kodlar ko'rinishida tuzatishga olib keladi. Bu, o'lchovsiz kodlarni tuzatishga va dasturlash jarayonlarini boshqarishga o'xshash muammolarni hal qilishda yordam bera olishi mumkin.


Masala:
Switch operatori har xil shartlarga asoslangan turli harakatlarni bajarish uchun ishlatiladi.
getDay() usuli ish kunini 0 dan 6 gacha bo'lgan raqam sifatida qaytaradi.

(Yakshanba = 0, dushanba = 1, seshanba = 2 ..)



Ushbu misolda ish kuni nomini hisoblash uchun ish kuni raqamidan foydalaniladi:
Yechim:

natija:

Bajariladigan ko'plab muqobil kod bloklarini belgilash uchun switch dan foydalaning
Download 113.77 Kb.

Do'stlaringiz bilan baham:




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