Funktsional dasturlash matematik funktsiyalarni baholashga asoslangan kompyuter dasturlash uslubi. Bu dasturlashning deklarativ uslubi, ya'ni aniq aniqlangan mantiqiy iboralardan foydalanadi, ammo har bir qadamda kompyuter nima qilishi kerakligini ko'rsatmaydi. Funktsional dasturlashning aksiomasi shundaki, funktsiya har qanday berilgan argumentlar to'plami uchun bir xil natijani berishi kerak. Funktsiyalar funktsiyani necha marta baholashidan qat'i nazar, funktsiyalar ushbu kontseptsiyaga, "bir xil argumentlarga, bir xil natijalarga" rioya qiladi.
Funktsional dasturlashning umumiy xususiyati o'zgarmas ob'ektlardir). O'zgarmas ob'ektning qiymati o'rnatilganda, uni o'zgartirish mumkin emas. Buning o'rniga ob'ektning nusxalari yaratiladi va o'zgartiriladi. Ushbu yondashuvdan foydalanib, ma'lumotlar xavfsizligi kuchayadi va disk raskadrovka osonlashadi.
Funktsional dasturlash tillariga misollar Erlang
Xaskell
Yuliya
Idempotentlik, dasturlash tili, dasturlash shartlari
OOP va funktsional dasturlash o'rtasidagi farq
Ikkala ob'ektga yo'naltirilgan dasturlash (OOP) va funktsional dasturlash ikkita oson dasturlash metodologiyasi bo'lib, ular osonlikcha tushunarli, boshqariladigan kodni xatolardan xoli. Biroq, ular ma'lumotlarni saqlash va boshqarish uchun turli xil yondashuvlardan foydalanadilar. Ammo qaysi birini afzal ko'rasiz? Keling, ikkalasini yaxshiroq tushunish uchun ikkita dasturlash paradigmalarining farqini ko'rib chiqaylik.
Ob'ektga yo'naltirilgan dasturlash nima? Ob'ektga yo'naltirilgan dasturlash yoki oddiygina "OOP" deb nomlanadigan bu shunchaki funktsiyalar va protseduralar o'rniga ob'ektlar tushunchasiga asoslangan dasturiy ta'minot dasturiy modelidir. OOP shunday yaratilganki, real dunyo tushunchasi kompyuter dasturida dasturlashtirilishi mumkin. Nomidan ko'rinib turibdiki, OOP dasturlarni tuzishda ob'ektlardan foydalanadi, ular sinflarga ajratilgan bo'lib, alohida ob'ektlarni birlashtirishga imkon beradi. OOPdagi har bir ob'ekt vazifalar to'plami uchun javobgardir. Shunday qilib, tegishli ob'ektda aniqlangan operatsiyalarni chaqirib, dasturdagi turli xil vazifalar bajariladi. OOPning asosiy xususiyatlari 60-yillarda kashf qilingan bo'lsa ham, 1980-yillarga kelib ob'ektga yo'naltirilgan tillar aslida e'tiborni jalb qila olmadi. OOP - bu inqilobiy g'oyadir va uning so'nggi bir necha o'n yilliklarda dominant dasturlash paradigmasiga aylanishining bir qator sabablari bor.