Decidir qué tecnologías y herramientas utilizar
Actualización: noviembre 2007
Cuando diseñe la aplicación, quizá necesite ayuda para elegir entre diferentes tecnologías o perspectivas. En esta página se resumen las opciones y se proporcionan vínculos para obtener más información acerca del desarrollo de aplicaciones con Visual Studio y .NET Framework.
¿Qué desea hacer con Visual Studio y .NET Framework?
Crear una aplicación
Con una interfaz de usuario
Aplicaciones; para obtener ayuda para decidir formularios Windows Forms y formularios Web Forms, vea Elegir entre formularios Windows Forms y formularios Web Forms. En las páginas siguientes puede consultar información adicional:
Controls: para obtener más información, vea el control Desarrollar controles de formularios Windows Forms en tiempo de diseño.
Controles de formularios Windows Forms; para obtener información detallada, vea Controles de formularios Windows Forms por función
Controles de servidor HTML; para obtener más información, vea Controles de servidor HTML
Controles de usuario Web; para obtener detalles, vea Información general sobre los controles de usuario ASP.NET
Control personalizado Web; para obtener detalles, vea Desarrollar controles de servidor ASP.NET personalizados
Controles de Windows Presentation Foundation: para obtener información detallada, vea Biblioteca de controles
Componentes basados en servidor
Servicios de Windows; para obtener detalles, vea Supervisar servicios de Windows
Procesos; utilice el componente de supervisión; para obtener más información, vea Supervisar y administrar procesos de Windows
PerformanceCounter; para obtener detalles, vea Supervisar umbrales de rendimiento
EventLog; para obtener más información, vea Registrar eventos de aplicación, de servidor o de seguridad
Sistema de archivos; para obtener detalles, vea Reaccionar a eventos del sistema de archivos
Active Directory; para obtener detalles, vea System.DirectoryServices Namespace Overview
Componente de mensajería; para obtener información detallada, vea Utilizar componentes de mensajería
Temporizadores en el servidor; para obtener más información, vea Crear tareas de servidor basadas en temporizador
Temporizadores en el cliente; para obtener detalles, vea Timer (Componente, formularios Windows Forms)
Sin interfaz
Ejecutable
Aplicación de línea de comandos; para obtener más detalles, vea Plantilla de aplicación de consola
Servicio de Windows (antes denominado "servicio NT"): un ejecutable de Windows de ejecución larga; para obtener más detalles, vea Aplicaciones de servicios de Windows)
Biblioteca
Servicio Web XML: los servicios Web XML son aplicaciones que pueden intercambiar mensajes de interoperabilidad en un entorno de correspondencia impreciso mediante el uso de protocolos estándar, como HTTP, XML, XSD, SOAP y WSDL. Se puede tener acceso a los servicios Web XML de una aplicación Web, una aplicación de escritorio de Windows u otro servicio Web XML; para obtener detalles, vea Programar la Web con servicios web. Para obtener más información sobre el desarrollo con servicios web en los Diseñadores de sistemas distribuidos, que forman parte de Visual Studio Team para Architects, vea Información general sobre aplicaciones ASP.NET en diagramas de aplicaciones.
Componente .NET; para obtener información detallada, vea Creación de componentes
Crear una aplicación distribuida
Para obtener un ejemplo paso a paso, vea Tutoriales de diseño de servicios web.
Crear una aplicación de Smart Device
Desarrolle aplicaciones cliente enriquecidas basadas en Windows CE y Windows Mobile que se ejecutan en dispositivos como teléfonos Smartphone y Pocket PC. Para obtener más información, vea Desarrollo de dispositivos inteligentes y Consideraciones de diseño para el desarrollo de aplicaciones para Smart Device.
Si va a orientar el explorador a un teléfono móvil, un asistente personal digital (PDA) o un localizador (pager), utilice formularios Web Forms para dispositivos móviles; para obtener información detallada, vea Crear páginas Web de ASP.NET Mobile.
Crear una aplicación centrada en datos
Si...
Va a navegar por varias tablas discretas de resultados...
Va a manipular datos de varios orígenes (por ejemplo, de diferentes bases de datos, de archivos XML, hojas de cálculo, etc., todos en el mismo conjunto de datos)...
Va a intercambiar datos con otras aplicaciones...
Va a volver a utilizar el mismo conjunto de filas y piensa almacenarlo en memoria caché (por ejemplo, ordenar, buscar y filtrar resultados almacenados en memoria caché)...
Va a realizar una gran cantidad de tareas de procesamiento en cada fila...
Va a manipular los datos mediante operaciones XML como transformaciones XML o XPath...
Desea que la programación sea sencilla...
Utilice un conjunto de datos; para obtener detalles, vea Información general sobre conjuntos de datos en Visual Studio.
De lo contrario, utilice el acceso directo (comandos de datos y lectores de datos); para obtener detalles, vea Recomendaciones sobre la estrategia de acceso a datos.
Por ejemplo, los comandos de datos y lectores de datos se utilizan:
Cuando esté ejecutando comandos DDL
Cuando se realizan actualizaciones o eliminaciones en función de criterios de selección
Cuando se insertan registros mediante programación que no dependen de la interacción del usuario
Al llamar a procedimientos almacenados para ejecutar la lógica del servidor
Al recuperar valores escalares de la base de datos
Cuando se procesa un conjunto de resultados sólo hacia delante sin actualizar ni almacenar en caché los resultados
Al procesar un conjunto de resultados demasiado grande para que quepa en memoria
Language-Integrated Query (LINQ)
LINQ genera las estructuras de las consultas en los lenguajes Visual Basic y C#. Para obtener información detallada, vea introducción a LINQ.
Existen diversos proveedores de LINQ:
LINQ to Objects, para el uso con colecciones en memoria.
LINQ to SQL, para el uso con datos en bases de datos de SQL.
LINQ to XML, para el uso con XML. Además, Visual Basic tiene funcionalidad adicional. Para obtener información detallada, vea XML en Visual Basic.
LINQ to DataSet, para el uso con conjuntos de datos de ADO.NET.
Aplicaciones de datos basadas en Web
Para obtener información detallada, vea Crear aplicaciones de datos de Visual Web Developer.
Los servicios Web XML son aplicaciones que pueden intercambiar mensajes de interoperabilidad en un entorno de correspondencia impreciso mediante el uso de protocolos estándar, como HTTP, XML, XSD, SOAP y WSDL. A un servicio Web XML se tiene acceso desde aplicaciones de escritorio (formularios Windows Forms), aplicaciones Web u otros servicios Web XML. Para obtener información detallada, vea Programar la Web con servicios web.
Aplicaciones de datos basadas en formularios Windows Forms
Utilice formularios Windows Forms; para obtener detalles, vea Crear aplicaciones de datos cliente.
Si...
Va a ejecutar comandos DDL...
Va a llamar a procedimientos almacenados para ejecutar la lógica del servidor...
Va a recuperar valores escalares desde la base de datos ...
Va a procesar un conjunto de resultados sólo hacia delante sin actualizar ni almacenar en caché los resultados...
Va a procesar un conjunto de resultados demasiado grande para que quepa en memoria ...
Utilice el acceso directo (comandos de datos y lectores de datos); para obtener detalles, vea Recomendaciones sobre la estrategia de acceso a datos
De lo contrario, utilice un conjunto de datos; para obtener detalles, Información general sobre conjuntos de datos en Visual Studio.
Por ejemplo, deberá utilizar un conjunto de datos si:
Va a enlazar resultados a un formulario para permitir que el usuario vea, inserte, actualice o elimine registros
Va a navegar por varias tablas discretas de resultados
Va a manipular datos de varios orígenes (por ejemplo, de diferentes bases de datos, de archivos XML, hojas de cálculo, etc., todos en el mismo conjunto de datos)
Va a intercambiar datos con otras aplicaciones
Va a volver a utilizar el mismo conjunto de filas (por ejemplo, ordenar, buscar y filtrar resultados recuperados)
Va a manipular los datos mediante operaciones XML como transformaciones XML o XPath
Aplicaciones de datos basadas en Smart Device
Para obtener información detallada, vea Trabajar con datos en proyectos de dispositivos administrados.
Aplicaciones de datos basadas en Office
Para obtener información detallada, vea Datos en las soluciones de Office.
Cree una aplicación de servicios web
Servicios web de Windows Communication Foundation
Para comenzar a utilizar los servicios web de Windows Communication Foundation en Visual Studio, vea Tutorial: Crear y obtener acceso a los servicios WCF.
Para comprender los principios de la tecnología de Windows Communication Foundation, vea Programación básica de WCF.
Servicios Web XML
Hay varios tutoriales que le ayudarán a crear un servicio Web XML. Para obtener información detallada, vea Crear y obtener acceso a los tutoriales de los servicios web. Vea también Obtener acceso a servicios web en código administrado.
Para obtener un ejemplo paso a paso de cómo tener acceso a un servicio Web XML de una aplicación para Windows, vea Tutorial: Llamar a los servicios Web XML desde un formulario Windows Forms.
Para obtener un ejemplo paso a paso de cómo tener acceso a un servicio Web XML de una aplicación para Windows, vea Tutorial: Obtener acceso a un servicio web utilizando Visual Basic o Visual C#.
Para obtener un ejemplo paso a paso de cómo diseñar y evaluar la implementación de servicios Web XML en los Diseñadores de sistemas distribuidos, vea Tutoriales de introducción del Diseñador de sistemas distribuidos.
Crear un aplicación del flujo de trabajo
Windows Workflow Foundation es el modelo de programación, motor y herramientas para crear con rapidez las aplicaciones habilitadas por flujo de trabajo en Windows.
Para obtener información general sobre los diferentes tipos de flujo de trabajo, vea Información general de Windows Workflow Foundation.
Visual Studio proporciona herramientas con las que resulta más sencillo crear aplicaciones de flujo de trabajo. Para obtener más información, vea Crear proyectos de flujo de trabajo.
Crear una solución de desarrollo de Office
Microsoft Visual Studio Tools para Microsoft Office System (versión 3.0) permite personalizar los documentos de Microsoft Office y Microsoft Office Outlook mediante código administrado.
Para obtener detalles sobre cómo crear soluciones mediante las aplicaciones de Office, vea Tareas comunes en la programación de Office.
Crear controles o componentes personalizados
Para obtener información detallada sobre cómo utilizar controles de formularios Windows Forms (incluida la protección de aplicaciones, la definición de propiedades, el control de eventos, la delimitación de controles, etc.), vea Controles de formularios Windows Forms.
Si desea ayuda para elegir el modo de crear un control, vea Recomendaciones sobre tipos de controles.
Controles de formularios Windows Forms
Para obtener información detallada, vea Desarrollar controles de formularios Windows Forms en tiempo de diseño.
Si desea agregar funcionalidad a un control existente de formularios Windows Forms, herede directamente del control de formularios Windows Forms; para obtener un ejemplo paso a paso, vea Tutorial: Heredar de un control de formularios Windows Forms con Visual Basic o Tutorial: Heredar de un control de formularios Windows Forms con Visual C#.
Si desea combinar los controles existentes en un nuevo control, herede de la clase UserControl; para obtener más detalles, vea Cómo: Heredar de una clase UserControl.
Si desea crear un control desde cero, herede de la clase Control ; para obtener más información, vea Cómo: Heredar de una clase de control.
COM
Exponer un componente .NET a COM; para obtener más detalles, vea Exponer componentes de .NET Framework en COM
Exponer un componente COM a .NET Framework; para obtener información detallada, vea Exponer componentes COM en .NET Framework
Componentes
Servicio Web XML, que técnicamente no es un componente, pero al que se puede llamar desde aplicaciones Windows, desde aplicaciones Web o desde otros servicios Web; para obtener más detalles, vea Programar la Web con servicios web
Componente .NET; para obtener información detallada, vea Creación de componentes
Automatizar tareas o extender el entorno
Para obtener ayuda para decidir si necesita una macro, un complemento o un asistente, vea Espectro de automatización de Visual Studio. Además, vea Seleccionar el enfoque de automatización apropiado.
Macro (sólo Visual Basic); para obtener detalles, vea Automatizar acciones repetitivas mediante macros
Complemento; para obtener información detallada, vea Cómo: Crear un complemento
Asistente; para obtener más información, vea Tutorial: Crear un asistente
Para obtener información detallada, vea Introducción a la extensibilidad de proyectos.
Para obtener información sobre la personalización avanzada del entorno de desarrollo, como la creación de un nuevo tipo de proyecto o editor personalizado, vea la sección "Visual Studio Integrator Program (VSIP)" de Espectro de automatización de Visual Studio.
Generar, depurar o probar
Para obtener más información sobre las opciones de generación de Visual Studio que tiene a su disposición, vea Generar aplicaciones en Visual Studio.
Para obtener información general sobre cómo realizar la depuración en Visual Studio, vea Guía básica del depurador.
Para obtener información detallada, vea:
Generar perfiles de una aplicación
Para obtener información detallada, vea Seguimiento e instrumentación de aplicaciones.
Implementar una aplicación
Para obtener ayuda en la elección del tipo de proyecto de implementación, vea Elegir una estrategia de implementación y Proyectos de instalación e implementación.
Solución de Visual Studio. Para obtener información detallada, vea Publicar aplicaciones ClickOnce.
Aplicación Web. Para obtener detalles, vea Implementación de un proyecto de programa de instalación Web.
Servicios Web. Para obtener detalles, vea Cómo: Implementar servicios web en código administrado.
Aplicaciones para Windows Para obtener un ejemplo, vea Tutorial: Implementar una aplicación basada en Windows.
Componente NET. Para obtener información detallada, vea Proyectos de módulo de combinación. Para obtener un ejemplo paso a paso, vea Tutorial: Instalar componentes compartidos mediante módulos de combinación.
Control ActiveX. Para obtener detalles, vea Proyectos de archivos .cab. Para obtener un ejemplo paso a paso, vea Cómo: Crear o agregar un proyecto CAB.
Evalúe la implementación de un sistema de aplicación en un centro de datos de destino utilizando Visual Studio Team para Architects; vea Tutorial: Validar un sistema de aplicación para su implementación y Evaluar la implementación de sistemas con el Diseñador de implementación.
Actualizar desde una versión anterior
Visual Basic. Para obtener información detallada, vea Actualizar aplicaciones creadas en versiones anteriores de Visual Basic.
C++. Para obtener información detallada, vea Trasladar y actualizar programas.
Obtener información sobre las características
Lo nuevo
Lo nuevo en Visual Studio 2008
Lo nuevo en proyectos de Smart Device
Cambios en Visual C++ 2005 y versiones anteriores
Lo nuevo en Visual Studio Tools para Office
Lo nuevo en Visual Database Tools
Lo nuevo en ASP.NET y desarrollo web
Ejemplos
Aplicaciones de ejemplo de Visual Basic
Ejemplos en el nivel de documento
Ejemplos de dispositivos inteligentes