Introducción a ASP.NET
ASP.NET es más que una nueva versión de las páginas Active Server (ASP), es una plataforma de programación Web unificada que proporciona los servicios necesarios para que los programadores creen aplicaciones Web para la empresa. Si bien ASP.NET es en gran medida compatible con la sintaxis de ASP, proporciona también un modelo de programación y una estructura nuevos para crear aplicaciones más seguras, escalables y estables. Las aplicaciones ASP se pueden ampliar agregándoles funcionalidad de ASP.NET.
ASP.NET es un entorno compilado basado en .NET. Se pueden crear aplicaciones en cualquier lenguaje compatible con .NET, como Visual Basic .NET, C# y JScript .NET. Además, .NET Framework está disponible en su totalidad para cualquier aplicación ASP.NET. Los programadores pueden aprovechar fácilmente las ventajas de estas tecnologías, que incluyen el entorno Common Language Runtime administrado, seguridad de tipos, herencia, etc.
ASP.NET se ha diseñado para funcionar sin problemas con editores HTML WYSIWYG y otras herramientas de programación como Microsoft Visual Studio .NET. Todo esto, además de hacer más fácil la programación Web, ofrece todas las ventajas de estas herramientas, con una GUI que los programadores puede utilizar para ubicar controles de servidor en una página Web e integrar completamente la compatibilidad con la depuración.
A la hora de crear una aplicación ASP.NET, los programadores pueden utilizar formularios Web Forms o servicios Web XML o combinarlas de la manera que más les convenga. Las dos características son compatibles con la misma infraestructura, que permite utilizar esquemas de autenticación, almacenar en caché datos que se utilizan con frecuencia y personalizar la configuración de la aplicación, entre otras muchas cosas.
- Los formularios Web Forms permiten crear páginas Web basadas en formularios muy eficaces. Al crear estas páginas, se pueden usar controles de servidor ASP.NET para crear elementos comunes de la interfaz de usuario y programarlos para que realicen las tareas comunes. Estos controles permiten crear con rapidez un formulario Web Forms a partir de componentes integrados reutilizables o personalizados, con un código de página simplificado. Para obtener más información, vea Páginas de formularios Web Forms. Para obtener información sobre cómo se desarrollan controles de servidor ASP.NET, vea Desarrollar controles de servidor ASP.NET.
- Un servicio Web XML proporciona los medios para obtener acceso a la funcionalidad del servidor de manera remota. Con los servicios Web XML, las empresas pueden exponer interfaces de programación a sus datos o lógica empresarial, que, a su vez, pueden obtener y manipular las aplicaciones de cliente y servidor. Los servicios Web XML permiten el intercambio de datos en escenarios cliente-servidor o servidor-servidor, utilizando estándares como los servicios de mensajería HTTP y XML para que los datos pasen los servidores de seguridad. Los servicios Web XML no están ligados a ninguna tecnología de componentes ni a ninguna convención de llamada a objetos concretas. En consecuencia, pueden tener acceso a los servicios Web XML los programas escritos en cualquier lenguaje, utilizando cualquier modelo de componentes y que se ejecuten en cualquier sistema operativo. Para obtener más información, vea Servicios Web XML creados con ASP.NET y clientes de servicios Web XML.
Cada uno de estos modelos puede aprovechar al máximo todas las características de ASP.NET, así como la eficacia de .NET Framework y Common Language Runtime de .NET Framework. Estas características y su utilización se describen así:
- Si tiene conocimientos de desarrollo de ASP, el nuevo modelo de programación de ASP.NET le resultará muy familiar. Sin embargo, el modelo de objetos ASP.NET ha cambiado de manera significativa con respecto a ASP, siendo más estructurado y orientado a objetos. Desafortunadamente, esto significa que ASP.NET no es totalmente compatible con versiones anteriores; casi todas las páginas ASP existentes deberán modificarse en cierta medida para que puedan ejecutarse en ASP.NET. Además, los importantes cambios de Visual Basic .NET implican que las páginas ASP escritas con Visual Basic Scripting Edition por lo general no se portarán directamente a ASP.NET. Aún así, en la mayoría de los casos los cambios necesarios sólo implicarán algunas líneas de código. Para obtener más información, vea Migrar páginas ASP a ASP.NET.
- El acceso a bases de datos desde aplicaciones ASP.NET es una técnica utilizada con frecuencia para mostrar datos a los usuarios que visitan un sitio Web. ASP.NET hace que tener acceso a bases de datos con esta finalidad sea más fácil que nunca. También permite administrar la base de datos desde el código. Para obtener más información, vea Acceso a datos con ASP.NET.
- ASP.NET proporciona un modelo sencillo que permite que los programadores Web escriban que el código se ejecuta en el nivel de la aplicación. Los programadores pueden escribir dicho código en el archivo de texto Global.asax o en una clase compilada implementada como ensamblado. Este lógica puede incluir eventos del nivel de la aplicación, pero los programadores tienen la posibilidad de extender este modelo para que se ajuste a las necesidades de la aplicación Web. Para obtener más información, vea Aplicaciones ASP.NET.
- ASP.NET proporciona facilidades de aplicación y de estado de la sesión de fácil manejo, conocidas por los programadores ASP y compatibles con todas las demás API de .NET Framework. Para obtener más información, vea Administración de estados de ASP.NET.
- Los programadores experimentados que deseen utilizar API tan eficaces como las interfaces de programación ISAPI incluidas en las versiones anteriores de ASP pueden utilizar las interfaces IHttpHandler y IHttpModule que ofrece ASP.NET. Si se implementa la interfaz IHttpHandler se obtienen un medio de interactuar con los servicios de solicitud y respuesta de bajo nivel del servidor Web de IIS y funciones muy similares a las extensiones ISAPI, pero con un modelo de programación más simple. La implementación de la interfaz IHttpModule permite incluir eventos personalizados que participan en todas las solicitudes que recibe la aplicación. Para obtener más información, vea Compatibilidad con el motor de tiempo de ejecución para HTTP.
- ASP.NET aprovecha las mejoras de rendimiento de .NET Framework y Common Language Runtime. Además, se ha diseñado para que ofrezca un rendimiento sensiblemente mejor que ASP y otras plataformas de programación Web. Todo el código de ASP.NET se compila, en lugar de interpretarse, lo que permite realizar enlaces en tiempo de diseño, establecer tipos inflexiblemente, compilar código nativo en modo Just-In-Time (JIT), entre otras muchas ventajas. En ASP.NET es muy fácil para los programadores eliminar módulos (por ejemplo, un modulo de sesión) que la aplicación que están programando no necesita. ASP.NET ofrece unos completos servicios de almacenamiento en caché (tanto servicios integrados como API de almacenamiento en caché). ASP.NET se suministra con contadores de rendimiento que los programadores y los administradores del sistema pueden supervisar para probar nuevas aplicaciones y recopilar estadísticas de aplicaciones existentes. Para obtener más información, vea Características del almacenamiento en caché de ASP.NET y Optimización de ASP.NET
- La escritura de instrucciones de depuración personalizadas en la página Web puede ayudar enormemente a resolver problemas de código de la aplicación. Sin embargo, estas instrucciones pueden resultar embarazosas si no se eliminan. El problema es que la eliminación de las instrucciones de depuración de las páginas cuando la aplicación está lista para su implementación en un servidor de producción puede requerir un esfuerzo considerable. ASP.NET proporciona la clase TraceContext, que permite escribir instrucciones de depuración personalizadas en la páginas según se van programando. Sólo aparecen cuando se habilita el seguimiento en una página o toda una aplicación. La habilitación del seguimiento agrega información sobre una solicitud a la página o, si se especifica así, a un visor de seguimiento personalizado almacenado en el directorio raíz de la aplicación. Para obtener más información, vea Seguimiento ASP.NET.
- .NET Framework y ASP.NET proporcionan esquemas de autorización y autenticación predeterminados para las aplicaciones Web. Es muy sencillo quitar, modificar o reemplazar estos esquemas, dependiendo de las necesidades de la aplicación. Para obtener más información, vea Proteger aplicaciones Web de ASP.NET.
- Los valores de configuración de ASP.NET se guardan en archivos basados en XML, que los usuarios pueden leer y escribir. Cada una de las aplicaciones puede tener un archivo de configuración distinto y el esquema de configuración se puede extender como sea necesario. Para obtener más información, vea Configuración ASP.NET.
- Se dice que las aplicaciones se están ejecutando simultáneamente cuando se instalan en el mismo equipo pero utilizan distintas versiones de .NET Framework. Para aprender a utilizar distintas versiones de ASP.NET para distintas aplicaciones del servidor, vea Compatibilidad con la ejecución simultánea en ASP.NET.
- IIS 6.0 utiliza un nuevo modelo de procesamiento denominado modo de aislamiento del procesamiento, que es distinto al modelo de procesamiento utilizado en versiones anteriores de IIS. ASP.NET utiliza este modelo de procesamiento de forma predeterminada cuando se ejecuta en Windows Server 2003. Para obtener información sobre la forma de migrar la configuración del modo de aislamiento del procesamiento del trabajo de ASP.NET, vea Modos de aislamiento de aplicaciones IIS 6.0.