Confronto Aurelia vs. Angular
Questa parte contiene l’essenza di questo articolo. Vediamo quale è meglio, Aurelia o Angular.
Conformità agli standard
Aurelia è interamente conforme agli standard web stabiliti e a quelli che sono attualmente in evoluzione. In questo caso, Angular è ancora indietro e tende a divergere dagli standard. Le librerie di Aurelia consistono principalmente in vanilla JS e classi TS.
Uno degli aspetti più evidenti in cui la mancanza di conformità di Agular ha conseguenze per i programmatori è la sensibilità alle maiuscole. Aurelia è case-insensitive come l’HTML standard è case-insensitive. La sintassi di Angular è case-sensitive, così che i browser web non possono usare i parser HTML. Aurelia permette di avvolgere comodamente tutti i template in un unico tag. Questa funzione è difficile da eseguire in Angular e potrebbe non essere affatto fattibile.
Binding
Aurelia supporta semplicemente sia il binding unidirezionale che bidirezionale, che è complicato in Angular e può portare alla confusione degli sviluppatori. Per impostazione predefinita, Aurelia ha un binding unidirezionale. Per applicazioni come il binding di un widget di input ad uno specifico modello di vista, il binding a due vie è più appropriato. La sintassi di Aurelia per legare le variabili all’interno di una classe è anche paragonabile a come viene fatto da JS. Il tipo di binding che stanno usando può essere definito nell’autodocumentazione dagli sviluppatori.
Auralia simple data binding:
Auralia two-way data binding:
Supporto linguistico
Gli sviluppatori sono autorizzati a scrivere codice JS in TypeScript solo in Angular. TypeScript può essere usato anche in Aurelia ma anche in altri linguaggi di programmazione che offrono molta più flessibilità agli sviluppatori, come ECMAScript (ES) e tutte le sue varianti. Anche se gli sviluppatori possono usare ES poiché la maggior parte della documentazione e delle risorse di Aurelia sono in Typescript, sono fortemente sollecitati ad usare TypeScript.
Routing
La configurazione delle rotte è fatta in modo simile da entrambi i framework, sebbene il concetto di tali rotte sia sostanzialmente diverso. In Aurelia, le rotte madri sono definite in un posto e portano la configurazione nei componenti figli per le subroute. I componenti sono completamente incapsulati da questa strategia, coprendo le loro complessità interne.
In un file di configurazione centrale, i percorsi di un modulo dovrebbero essere definiti in Angular, cioè percorsi, componenti instradabili e subroute. Questo approccio rende la descrizione dei percorsi di Angular ancora più impegnativa. Un esempio di routing di base usando Auralia è mostrato qui sotto (Fonte: documentazione di Auralia).
Interoperabilità
Aurelia si adatta bene ad altri framework e ha una migliore interoperabilità rispetto ad Angular.