Hvad er reaktiv programmering?

Reaktiv programmering er et datalogi -koncept, der beskriver egenskaberne ved et computerprogrammeringssprog, der fokuserer på automatisk at opretholde tilstanden for en applikation som de data, der bruges i programændringen. Et af de vigtigste træk ved et reaktivt programmeringssprog er, at erklærede og beregnede variabler konstant evalueres som andre variabler, der bruges i deres beregningsændring. Dette betyder, at sproget reagerer på ændringerne i statens tilstand i modsætning til at bruge mere imperative kommandoer til at styre staten, som mange traditionelle programmeringssprog gør. Det teoretiske resultat af en applikation, der anvender reaktive programmeringsfilosofier, ville være et program, der konstant og automatisk ændrer displayet eller andre faktorer baseret på de skiftende data, der flyder ind i programmet. Selvom flere imperative programmeringsmodeller kan bruges til at opnå de samme resultater som reaktiv programmering, ville målet med at skabe et reaktivt sprog være at have HAVE indfødt støtte til reaktive ændringer på det primitive niveau i stedet for på et objektniveau.

En måde at hjælpe med at afklare, hvordan reaktive programmering fungerer, er at sammenligne det med imperativ programmering. Når to tal tilføjes på et imperativt sprog, gemmes resultatet af tilføjelsen normalt på et givet hukommelsessted. Operationen finder sted det øjeblik, kommandoen udføres, og resultatet afkobles fra de to numre, der blev tilføjet for at skabe summen. Dette betyder, at hvis et af de to numre, der blev tilføjet, ændres efter tilføjelsen, finder sted, ville værdien af ​​summen ikke ændre sig, fordi det allerede er gemt i hukommelsen og adskilt fra de originale operander.

Når et reaktivt programmeringssprog tilføjer to variabler for at skabe en sum og en af ​​de to variabler ændres på et tidspunkt i fremtiden, vil summen også ændre sig. Dette indebærer, at et reaktivt program harEvne til at overvåge tilstanden af ​​de data, der bruges, og til at reagere automatisk på ændringer, hvilket potentielt ændrer den samlede tilstand af hele applikationen. Der er flere modeller inden for imperativ programmering, herunder begivenhedsbaseret programmering og observatørdatamodeller, der kan udføre de samme opgaver ved at oprette strukturer, der overvåger dataændringer, men et reaktivt sprog ville have indbyggede mekanismer til at gøre dette.

Brug af et reaktivt programmeringssprog kan være i områder, hvor fortolkning af realtid af vilkårlige datastrømme er nødvendig. Dette kan omfatte videnskabelig visualisering, grafiske brugergrænseflader (GUI'er) eller endda realtidskommunikation, hvor programmet konstant ændrer sig baseret på den datastrøm, der modtages. Det skal dog bemærkes, at der virkelig ikke er nogen fuldt implementerede, uafhængige reaktive programmeringssprog. De fleste fungerende implementeringer af konceptet har form af eksterne biblioteker for mere traditionelt imperativ eller funktionel LAnguages.

ANDRE SPROG

Hjalp denne artikel dig? tak for tilbagemeldingen tak for tilbagemeldingen

Hvordan kan vi hjælpe? Hvordan kan vi hjælpe?