Atšķirība Starp Funkcionālo Programmēšanu Un Obligāto Programmēšanu

Satura rādītājs:

Atšķirība Starp Funkcionālo Programmēšanu Un Obligāto Programmēšanu
Atšķirība Starp Funkcionālo Programmēšanu Un Obligāto Programmēšanu

Video: Atšķirība Starp Funkcionālo Programmēšanu Un Obligāto Programmēšanu

Video: Atšķirība Starp Funkcionālo Programmēšanu Un Obligāto Programmēšanu
Video: C# Programmēšanas kurss iesācējiem. Apmācības kurss, kas Jums palīdzēs uzsākt programmētāja karjeru. 2024, Novembris
Anonim

Galvenā atšķirība - funkcionāla programmēšana vs obligāta programmēšana

Galvenā atšķirība starp funkcionālo programmēšanu un obligāto programmēšanu ir tāda, ka funkcionālā programmēšana aprēķinus uzskata par matemātiskām funkcijām un ļauj izvairīties no stāvokļa un maināmu datu maiņas, savukārt imperatīvā programmēšana izmanto apgalvojumus, kas maina programmu stāvokli.

Programmēšanas paradigma nodrošina datorprogrammas struktūras un elementu veidošanas stilu. Programmēšanas paradigmas palīdz klasificēt programmēšanas valodas pēc to īpašībām. Programmēšanas valoda varētu ietekmēt vairāk paradigmu. Objektorientētā paradigmā programma tiek strukturēta, izmantojot objektus, un objekti nodod ziņojumus, izmantojot metodes. Loģiskā programmēšana var izteikt aprēķinu tikai matemātiskās loģikas izteiksmē. Vēl divas programmēšanas paradigmas ir funkcionāla programmēšana un obligāta programmēšana. Funkcionālā programmēšana ļauj izteikt aprēķinus kā matemātisko funkciju novērtēšanu. Obligātā programmēšana nodrošina paziņojumus, kas skaidri maina atmiņas stāvokli. Šajā rakstā ir aplūkota atšķirība starp funkcionālo programmēšanu un obligāto programmēšanu.

SATURS

1. Pārskats un galvenās atšķirības

2. Kas ir funkcionālā programmēšana

3. Kas ir obligāta programmēšana

4. Funkcionālās programmēšanas un obligātās programmēšanas līdzības

5. Blakus salīdzinājums - Funkcionālā programmēšana vs Obligātā programmēšana tabulas veidā

6. Kopsavilkums

Kas ir funkcionālā programmēšana?

Funkcionālās programmēšanas pamatā ir matemātika. Funkcionālās programmēšanas galvenais princips ir tāds, ka visa aprēķināšana tiek uzskatīta par atsevišķu matemātisko funkciju kombināciju. Matemātiskā funkcija kartē izejas un izejas. Pieņemsim, ka pastāv funkcija ar nosaukumu f (x) = x * x. X vērtība 1 tiek kartēta uz izvadi 1. X vērtība 2 tiek kartēta ar izeju 4. X vērtība 3 tiek kartēta ar izeju 9 un tā tālāk.

Atšķirība starp funkcionālo programmēšanu un obligāto programmēšanu
Atšķirība starp funkcionālo programmēšanu un obligāto programmēšanu

01. attēls: Funkcionālās programmēšanas valodas piemērs - Haskels

Funkcionālajā programmēšanā tiek ņemti vērā modeļi. Funkcionālās programmēšanas valodas Haskell izmanto šo metodi, lai atrastu skaitļu summēšanu.

Funkcijai Sum ir veselu skaitļu vērtības, un rezultāts būs arī vesels skaitlis. To var rakstīt kā summu: [int] -> int. Apkopošanu var veikt, ievērojot šādus modeļus.

summa [n] = n, viena skaitļa summa ir pats skaitlis.

Ja ir numuru saraksts, to var rakstīt šādi. N apzīmē pirmo skaitli, un ns apzīmē pārējos skaitļus

summa (n, ns) = n + summa ns.

Iepriekš minētos modeļus var izmantot, lai atrastu trīs skaitļus, kas ir 3,4,5.

3 + summa [4,5]

3 + (4 + summa [5])

3+ 4 + 5 = 12

Tiek teikts, ka funkcijai vai izteiksmei ir blakusparādības, ja tā pārveido kādu stāvokli ārpus tās darbības jomas vai tai ir novērojama mijiedarbība ar tās izsaukšanas funkcijām, izņemot atgriežamo vērtību. Funkcionālā programmēšana samazina šīs blakusparādības. Stāvokļa izmaiņas nav atkarīgas no funkcijas ievadiem. Tas ir noderīgi, izprotot programmas uzvedību. Viens funkcionālās programmēšanas trūkums ir tas, ka funkcionālās programmēšanas mācīšanās ir grūtāka salīdzinājumā ar obligāto programmēšanu.

Kas ir obligāta programmēšana?

Obligātā programmēšana ir programmēšanas paradigma, kurā tiek izmantoti paziņojumi, kas maina programmas stāvokli. Tas koncentrējas uz programmas darbības aprakstīšanu. Programmēšanas valodas, piemēram, Java, C un C #, ir obligātas programmēšanas valodas. Tas sniedz soli pa solim procedūru, kā rīkoties. Obligātās programmēšanas valodas satur tādas struktūras kā if, else, savukārt cilpām, klasēm, objektiem un funkcijām.

Galvenā atšķirība starp funkcionālo programmēšanu un obligāto programmēšanu
Galvenā atšķirība starp funkcionālo programmēšanu un obligāto programmēšanu

02. attēls: Obligātās programmēšanas valodas piemērs - Java

Desmit skaitļu summēšanu Java var atrast šādi. Katrā atkārtojumā summai pievieno i vērtību un piešķir summas mainīgajam. Katrā atkārtojumā summas vērtība turpina pieskaitīt iepriekš aprēķinātajai summai.

int summa = 0;

par (int i = 0; i <= 10; i ++) {

summa = summa + i;

}

Obligātu programmēšanu ir viegli iemācīties, saprast un atkļūdot. Programmas stāvokli ir viegli atrast, jo tiek izmantoti stāvokļa mainīgie. Daži trūkumi ir tas, ka tas var padarīt kodu garu un var arī samazināt mērogojamību.

Kāda ir līdzība starp funkcionālo programmēšanu un obligāto programmēšanu?

Gan funkcionālā programmēšana, gan obligātā programmēšana ir programmēšanas paradigmas

Kāda ir atšķirība starp funkcionālo programmēšanu un obligāto programmēšanu?

Atšķirīgs raksts vidū pirms tabulas

Funkcionāla vs obligāta programmēšana

Funkcionālā programmēšana ir programmēšanas paradigma, kas aprēķināšanu uzskata par matemātisko funkciju novērtēšanu un novērš stāvokļa un maināmu datu mainīšanu. Obligātā programmēšana ir programmēšanas paradigma, kurā tiek izmantoti paziņojumi, kas maina programmas stāvokli.
Struktūras
Funkcionālā programmēšana satur funkciju izsaukumus un augstāka līmeņa funkcijas. Obligātā programmēšana satur ciklus, funkcijas, klases un objektus if, else, while.
Programmēšanas valodas
Scala, Haskell un Lisp ir funkcionālas programmēšanas valodas. C, C ++, Java ir obligātas programmēšanas valodas.
Koncentrējieties
Funkcionālā programmēšana koncentrējas uz gala rezultātu. Obligātā programmēšana koncentrējas uz programmas darbības aprakstīšanu.
Vienkāršība
Funkcionāla programmēšana ir grūta. Obligāta programmēšana ir vienkāršāka.

Kopsavilkums - funkcionālā programmēšana vs obligātā programmēšana

Programmēšanas paradigma nodrošina datorprogrammas struktūras un elementu veidošanas stilu. Funkcionālā programmēšana un obligātā programmēšana ir divas no tām. Atšķirība starp funkcionālo programmēšanu un obligāto programmēšanu ir tāda, ka funkcionālā programmēšana aprēķinus uzskata par matemātiskām funkcijām un ļauj izvairīties no stāvokļa un maināmu datu maiņas, savukārt imperatīvā programmēšana izmanto apgalvojumus, kas maina programmu stāvokli.

Ieteicams: