Sviluppo imperativo e dichiarativo

Completato

Dopo aver completato i precedenti percorsi di apprendimento consigliati, sarà stata acquisita una solida formazione di base su Power Apps. Questo percorso di apprendimento presenterà alcuni dei concetti più avanzati supportati da Power Apps.

Questo modulo include alcuni argomenti che possono sembrare troppo specialistici. In realtà, l'obiettivo è aiutare a comprendere e applicare alcuni di essi per compilare app migliori.

Programmazione imperativa e dichiarativa

Esistono due metodi principali per lo sviluppo: imperativo e dichiarativo. Nello sviluppo imperativo l'attenzione è rivolta a come raggiungere un obiettivo. Nello sviluppo dichiarativo l'attenzione è rivolta al raggiungimento del risultato. Lo sviluppo imperativo offre maggiore flessibilità, perché permette di controllare ogni passaggio del processo, ma implica anche più codice e una maggiore complessità. Lo sviluppo dichiarativo è molto più semplice e lineare da usare, ma potrebbe non offrire il controllo completo desiderato.

Programmazione imperativa

Per comprendere al meglio la programmazione imperativa, si può pensare a un panino da mangiare a pranzo. Nella programmazione imperativa ci si concentra sulla creazione del panino nel "codice". Si va in cucina, ci si procurano gli ingredienti, si compone il panino e quindi lo si invia all'utente. Ogni passaggio richiede molto tempo, ma si hanno a disposizione tutte le funzioni specifiche necessarie per crearlo esattamente nel modo desiderato. Niente pomodori? Nessun problema. In un linguaggio di programmazione immaginario il codice sarà simile al seguente.

Funzione Crea panino

{ Andare in cucina;

Prendere gli ingredienti;

Rimuovere i pomodori;

Assemblare il panino;}

Funzione Invia panino

{ Destinazione bocca;}

Come si può notare, il processo include molti passaggi, ma permette di ottenere un panino del tutto corrispondente a quello desiderato. Questo è l'approccio usato in C# o in altri linguaggi di codifica comuni. L'attenzione è rivolta al push dei dati.

Programmazione dichiarativa

Per la programmazione dichiarativa, immaginare lo stesso scenario, il panino per il pranzo. La differenza è che ora ci si concentrerà sulla produzione del panino e non sulla sua composizione. Questo approccio è molto meno complesso, ma può creare problemi, come nel caso dei pomodori citato in precedenza. Se la funzione usata per ottenere il panino non supporta l'opzione per escludere i pomodori, il risultato non è del tutto soddisfacente. Il codice sarà lineare come quello seguente.

GetSandwich(Cucina, Bocca)

Questa funzione immaginaria accetta due input, da dove ottenere il panino e dove inviarlo. Non è disponibile alcuna opzione per rimuovere i pomodori. Sarebbe compito dell'utente che crea la funzione GetSandwich aggiungere un'opzione per la rimozione dei pomodori, che sarebbe simile alla seguente.

GetSandwich(Kitchen, Mouth, {Tomato: false})

Gli strumenti con uso limitato di codice come Excel applicano questo approccio allo sviluppo. In questo caso, ci si concentra sul pull dei dati.

Power Apps supporta sia la metodologia imperativa sia quella dichiarativa

Power Apps include funzionalità per la logica imperativa e per quella dichiarativa. In questo corso di formazione sono state trattate principalmente le formule dichiarative. La parte restante di questo modulo verterà invece sulle metodologie e sui concetti legati all'approccio imperativo in Power Apps. Il componente principale della logica imperativa in Power Apps sono le variabili.

L'unità successiva presenterà i diversi tipi di variabili e descriverà come usarli in modalità imperativa.