Tuesday, February 20, 2007

ASP.NET : l'autre côté de la médaille

Mon dernier message sur ce blog datait de la fin 2006, alors que je suivais mon cours de PHP. Cette session, début 2007, je suis un cours d'ASP, plus précisément d'ASP.NET (pages avec un suffixe .aspx).

Les deux langages sont souvent comparés car ils sont tous deux des langages de programmation orientés serveur. Or, PHP est un langage libre et ASP.NET est propriétaire, appartenant à Microsoft. Ainsi, les serveurs Web disposant d'ASP.NET sont très rares.

Alors, quel est le meilleur ? Personnellement, je suis un fan de PHP. Donc, je considère ce dernier comme étant meilleur que l'ASP.

Cependant, les deux ont des avantages et on pourrait même pousser l'audace à dire que les deux langages ne se comparent pas.

En effet, le PHP est un langage interprété, tandis que ASP.NET est compilé. De plus, puisque l'un est libre et l'autre, propriétaire, les outils de développement associés au deux langages, leur méthode de développement, etc. est différente.

Mais bon, assez parlé des différences entre les deux : je vais maintenant vous parler d'ASP.NET tout court.

ASP.NET est la suite du langage ASP de Microsoft, dans la veine de sa technologie (span style="font-style: italic;">framework) .NET. ASP est interprété ; ASP.NET, lui, est compilé. La comparaison est donc plus aisée entre ASP et PHP qu'entre ASP.NET et PHP.

Le gros avantage de l'ASP.NET, c'est que pratiquement aucun code HTML n'est entré par le programmeur, à l'exception des balises html, head et body de base, et d'un formulaire (balise form) contenant les contrôles serveurs. Ce sont ces contrôles serveur qui sont responsable de la génération du code HTML de la page. Ainsi, on peut retrouver, comme en VB.NET, des labels (balise span), boutons , des liste déroulantes, etc. En définissant les propriétés de ces contrôles serveurs, c'est comme si on changeait les attributs de la balise HTML. Donc, à ce niveau-là, ASP.NET permet une très grande standardisation du code, et ça, c'est très bon ! (D'autant plus que le programmeur n'a pas à se casser la tête avec des tas de balises et de code HTML compliqué.) Et en plus, le code HTML généré est valide XHTML !

Un autre aspect de l'ASP.NET, c'est qu'il est orienté événement. En effet, les contrôles serveurs sont exécutés sur le serveur, et si définis comme tel, attendent des événements de la part de l'utilisateur (clic de bouton, sélection d'une checkbox, etc.). Ces événements sont ensuite passer au serveur qui, souvent, appel une fonction définie par l'utilisateur lors du déclenchement de l'événement.

Ces deux raisons justifient, à elles seules, l'utilisation d'ASP.NET.

Bien que ASP.NET soit un très bon langage cependant, je préfère tout de même PHP. ;-P