Ushbu 2 paradigm paradigmlar asosi xisoblanadi desam mubolaga' bo'lmaydi chunki Paradigmlar aynan shu 2ta turga ajraladi. Misol uchun OOP, FP bu Declarative xisoblansa, Procedural va OOP (haqiqiy OOP emas) Imperative xisoblanadi. Hop keling ikkisini farqini tushinib olsak.
Imperative Programming
Imperative Programmin is about "HOW a program works". Aniqroq tushunchada aytadigan bo'lsa siz sochizni oldirayabsiz. Sartaroshga qarab:
"Xullas oka, sochni orqasini ozgina, ikki yonini kaltaro va ustini uch-uchuidan olib qo'ying." deyishingiz bu har bir qadamni qanday bajarishni aytishga to'g'ri keladi va sartarosh ham xuddi shunday oladi. Shu narsa Imperative Programming deyiladi. Pythonda example keltiradigan bo'lsak
total = 0
nums = [1, 2, 3, 4, 5]
for num in nums:
total += numUshbu kod aynan imperative xisoblanadi chunki har bir stepni siz tasvirlab berayabsiz qanday bo'lishini.
Declarative Programming
Declarative Programmin is about "WHAT a program does". Yana o'sha sartarosh oldidasiz, ammo bu safar siz unga qarab:
"Xullas oka, sochimni mana bunga o'xshatib qo'ying." deyishingiz bu qanday qilishini farqi yo'q ammo shunday natija bersa bo'ldi deganday gap.
nums = [1, 2, 3, 4, 5]total = sum(nums)Ushbu kod aynan declarativega to'g'ri keladi chunki siz steplarni keltirmayabsiz qisqacha qanday natija xohlashizni aytayabsiz xolos.
It's all about Abstraction
Barchasi borib abstractionga taqaladi chunki bizga uni QANDAY ishlashi emas balkim NIMA qilishi ya'ni ishlashi muhim deyishday gap.
Post idea chopildi, rozi bo'lasiz )
@otabekswe