ASP.NET

**ASP.NET** é unha ferramenta de desenvolvemento web comercializada por Microsoft. É usada por programadores para construír sitios web domésticos, aplicacións web e servizos XML. Forma parte da plataforma .NET de Microsoft e é a tecnoloxía sucesora da tecnoloxía Active Server Pages (ASP).

Mentres que un modelo de programación para aplicacións de uso común está moi ben establecido e soportado por un gran número de linguaxes e ferramentas de desenvolvemento, a programación web é unha mestura de varias linguaxes de etiquetas, un grande uso de linguaxes de *script* e plataformas de servidor. O coñecemento e habilidades que se necesitan para desenvolver aplicacións web teñen moi pouco en común coas que son necesarias no desenvolvemento tradicional de aplicacións.

## Precedentes 
Microsoft introduciu esta tecnoloxía chamada Active Server Pages en decembro de 1996, polo que non é nada nova. É parte do Internet Information Server (IIS) desde a versión 3.0 e é unha tecnoloxía de páxinas activas que permite o uso de diferentes scripts e compoñentes en conxunto co tradicional HTML para mostrar páxinas xeradas dinámicamente. A definición contextual de Microsoft é que As Active Server Pages son un ambiente de aplicación aberto e gratuíto no que se pode combinar código HTML, scripts e compoñentes ActiveX do servidor para crear solucións dinámicas e poderosas para o web*".

## Definición 
Microsoft desenvolveu unha nova tecnoloxía denominada ASP.NET -como parte da súa estratexia.NET- para o desenvolvemento Web, co obxectivo de resolver as limitacións de ASP e posibilitar a creación de software como servizo. ASP.NET é a plataforma unificada de desenvolvemento web que proporciona aos desenvolvedores os servizos necesarios para crear aplicacións web empresariais.

## Evolución respecto ao ASP clásico 
No modelo de desenvolvemento web baseado en páxinas activas, a programación ASP actual ten diversas limitacións:

* Para que todo ocorra nunha páxina web, é habitual escribir unha gran cantidade de código para resolver necesidades sinxelas. ASP.NET incorpora un modelo declarativo á programación web: os controis de servidor funcionan nunha páxina Web simplemente declarándoos. Cando se carga a páxina ASP.NET, se instancian os controis listados na páxina ASP e é responsabilidade do control emitir código HTML que o navegador poida entender.
* ASP clásico é un tanto desorganizado. Nunha páxina ASP podemos incluír case todo: HTML plano, código script, obxectos COM e texto. Non hai unha distinción formal entre o contido dunha páxina e o seu comportamento: simplemente, inserimos código na páxina, e a ver que pasa. ASP.NET impón unha certa orde sobre o modelo de programación estándar ASP. En certo xeito, esta desorganización pode evitarse facilmente usando o sentido común e algunhas das novas tecnoloxías. Por exemplo, podemos escribir nas nosas páxinas ASP unicamente código VBScript. Devandito código xeraría unha mensaxe XML, que logo seria interpretado por un arquivo XSLT. Desta forma conseguimos evitar o chamado "código spaguetti", aumentando a claridade do código e a velocidade de execución das páxinas ASP.
* A terceira limitación no desenvolvemento con ASP é que co tradicional utilizamos linguaxes de scripting non tipados como VBScript ou JScript. Podemos instalar outros motores de scripting que impoñan verificación de tipos; con todo, non son universalmente coñecidos ou utilizados como os anteriores. ASP.NET claramente separa a porción baseada en script dunha páxina web do seu contido.
* ASP.Net, pode dicirse que é un novo nivel de abstracción na construción de sitios web, por que se poden crear rapidamente aplicacións web, baseándose nos controis incluídos no *frameWork* ou moitos gratuítos que hai na rede, ocultando o código de moito Ex: Podes crear facilmente un *grid'' ou táboa, e esta se auto-ordena, páxina etc, obtendo os seus datos desde calquera base de datos. Inclúe unha gran ferramenta para a construción de reportes, e isto inclúe medios automáticos para exportalos a XLS ou PDF, e de igual forma inclúe CristalReport. Ademais permite separar completamente a interface da lóxica de negocio. Excelente para desenvolvemento de aplicacións multicapas.
* É moi sinxela a creación de páxinas con AJAX, só incluíndo uns controis, así como descargar gratuitamente o ToolKit de ASP.Net Ajax.

## Uso actual da linguaxe 
Na actualidade unha aplicación ASP.NET pode executarse de dúas formas distintas:

### Aplicacións cliente/servidor 
Estas aplicacións están tipicamente en formato de executables compilados. Estes poden integrar toda a riqueza dunha interface de usuario, tal é o caso das aplicacións de desempeño e produtividade, pero non se reúne a lóxica de negocio como un recurso que se poida reutilizar. Ademais son menos xestionables e escalables que as demais aplicacións.

### Aplicacións que utilizan o navegador 
Devanditas aplicacións están caracterizadas por contar cunha interface de web rica e moi útil. A interface gráfica integra varias tecnoloxías, as cales son o HTML, XHTML, scripting etc; a condición de que o navegador que se estea utilizando soporte estas tecnoloxías.

## Véxase tamén 
### Ligazóns externas 
* ASP.NET Tutoriales - Portal en castelán sobre tecnoloxías.NET.
* ASP.NET Hosting - Web en castelán de servizos.NET.
* ASP.NET Tutorial - Web en Ínguas e Español de tecnoloxía ASP.NET