Comparaison entre Aurelia et Angular
Cette partie contient l’essentiel de cet article. Voyons lequel est le meilleur, Aurelia ou Angular.
Conformité aux normes
Aurelia est entièrement conforme aux normes web établies ainsi qu’à celles qui évoluent actuellement. Dans ce cas, Angular est toujours en retard et a tendance à s’écarter des standards. Les bibliothèques d’Aurelia se composent principalement de vanilla JS et de classes TS.
L’un des aspects les plus notables où le manque de conformité d’Agular a des conséquences pour les programmeurs est la sensibilité à la casse. Aurelia est insensible à la casse comme le HTML standard l’est. La syntaxe d’Angular est sensible à la casse, de sorte que les navigateurs web ne peuvent pas utiliser les analyseurs HTML. Aurelia permet à tous les modèles d’être commodément enveloppés dans une seule balise. Cette fonction est difficile à exécuter dans Angular et peut ne pas être réalisable du tout.
Binding
Aurelia prend simplement en charge la liaison à sens unique et à double sens, ce qui est compliqué dans Angular et peut entraîner une confusion chez les développeurs. Par défaut, Aurelia dispose d’un binding à sens unique. Pour des applications comme la liaison d’un widget d’entrée à un modèle de vue spécifique, la liaison bidirectionnelle est plus appropriée. La syntaxe d’Aurelia pour lier des variables à l’intérieur d’une classe est également comparable à la façon dont cela est fait par JS. Le type de liaison qu’ils utilisent peut être défini dans l’auto-documentation par les développeurs.
La liaison de données simple d’Aurelia:
La liaison de données bidirectionnelle d’Aurelia:
Support du langage
Les développeurs sont autorisés à écrire du code JS en TypeScript uniquement dans Angular. TypeScript peut également être utilisé dans Aurelia mais aussi d’autres langages de programmation offrant beaucoup plus de flexibilité aux développeurs, comme ECMAScript (ES) et toutes ses variantes. Bien que les développeurs puissent utiliser ES puisque la plupart de la documentation et des ressources d’Aurelia sont en Typescript, il leur est fortement conseillé d’utiliser TypeScript.
Routing
La configuration du routage est effectuée de manière similaire par les deux frameworks, bien que le concept de ces routes soit sensiblement différent. Dans Aurelia, les routes mères sont définies à un endroit et apportent la configuration dans les composants enfants pour les sous-routes. Les composants sont complètement encapsulés par cette stratégie, couvrant leurs complexités internes.
A l’intérieur d’un fichier de configuration central, les routes d’un module doivent être définies en Angular, à savoir les chemins, les composants routables et les sous-routes. Cette approche rend la description des routes d’Angular encore plus difficile. Un exemple de routage de base utilisant Auralia est présenté ci-dessous (Source : documentation Auralia).
Interopérabilité
Aurelia s’adapte bien à d’autres frameworks et présente une meilleure interopérabilité qu’Angular.