Compartir vía


Información sobre proyectos y soluciones con Visual Basic

En este artículo introductorio se explica qué significa crear una solución y un proyecto en Visual Studio. Una solución es un contenedor que se usa para organizar uno o más proyectos de código relacionados, por ejemplo, un proyecto de biblioteca de clases y un proyecto de prueba correspondiente. Echaremos un vistazo a las propiedades de un proyecto y a algunos de los archivos que puede contener. También se crea una referencia de un proyecto a otro.

Sugerencia

Si todavía no ha instalado Visual Studio, vaya a la página de descargas de Visual Studio para instalarlo de forma gratuita.

Se crean una solución y un proyecto desde cero como ejercicio educativo para comprender el concepto de proyecto. Cuando use Visual Studio, es probable que emplee alguna de las distintas plantillas de proyecto que Visual Studio ofrece al crear un nuevo proyecto.

Nota

No hacen falta soluciones ni proyectos para desarrollar aplicaciones en Visual Studio. Basta con abrir una carpeta que contenga código para empezar a codificar, compilar y depurar. Por ejemplo, si clona un repositorio de GitHub, podría no contener soluciones y proyectos de Visual Studio. Para obtener más información, vea Desarrollo de código en Visual Studio sin proyectos o soluciones.

Soluciones y proyectos

A pesar de su nombre, una solución no es una "respuesta", sino simplemente contenedores que Visual Studio usa para organizar uno o más proyectos relacionados. Cuando se abre una solución en Visual Studio, esta carga automáticamente todos los proyectos que la solución contiene.

Crear una solución

Comenzaremos nuestro periplo creando una solución vacía. Cuando se familiarice con Visual Studio, lo más probable es que no cree soluciones vacías con frecuencia. Al crear un proyecto, Visual Studio crea automáticamente una solución para hospedar ese proyecto si es que no hay ya una solución abierta.

  1. Abra Visual Studio.

  2. En la ventana de inicio, elija Crear un proyecto nuevo.

  3. En la página Crear un proyecto nuevo, escriba solución en blanco en el cuadro de búsqueda, seleccione la plantilla Solución en blanco y elija Siguiente.

    Screenshot showing the Create a new project window with 'blank solution' in the search box and the Blank Solution project template selected.

  4. Asígnele a la solución el nombre QuickSolution y elija Crear.

    Aparece una solución en el Explorador de soluciones, en el lado derecho de la ventana de Visual Studio. Seguramente use el Explorador de soluciones a menudo para examinar el contenido de los proyectos.

  1. Abra Visual Studio.

  2. En la ventana de inicio, elija Crear un proyecto nuevo.

  3. En la página Crear un proyecto nuevo, escriba solución en blanco en el cuadro de búsqueda, seleccione la plantilla Solución en blanco y elija Siguiente.

    Screenshot showing the Create a new project window with 'blank solution' in the search box and the Blank Solution project template selected.

  4. Asígnele a la solución el nombre QuickSolution y elija Crear.

    Aparece una solución en el Explorador de soluciones, en el lado derecho de la ventana de Visual Studio. Seguramente use el Explorador de soluciones a menudo para examinar el contenido de los proyectos.

Agregar un proyecto

Ahora, agreguemos nuestro primer proyecto a la solución. Comenzaremos con un proyecto vacío y le agregaremos los elementos que necesitamos.

  1. En el menú contextual que aparece al hacer clic con el botón derecho en Solución "QuickSolution" en el Explorador de soluciones, seleccione Agregar>Nuevo proyecto.

    Se abre un cuadro de diálogo de nombre Agregar un nuevo proyecto.

  2. Escriba el texto vacío en el cuadro de búsqueda de la parte superior y luego seleccione Visual Basic en Lenguaje.

  3. Seleccione la plantilla Proyecto vacío (.NET Framework) y luego Siguiente.

  4. Asigne el nombre QuickDate al proyecto y luego seleccione Crear.

    Un proyecto denominado QuickDate aparece debajo de la solución en el Explorador de soluciones. Actualmente solo contiene un archivo denominado App.config.

    Nota

    Si no ve la plantilla Proyecto vacío (.NET Framework), tiene que instalar la carga de trabajoDesarrollo de escritorio de .NET de Visual Studio. Visual Studio usa la instalación basada en la carga de trabajo para instalar únicamente los componentes necesarios para el tipo de desarrollo que lleva a cabo. Una manera fácil de instalar una nueva carga de trabajo al crear un nuevo proyecto es seleccionar el vínculo Instalar más herramientas y características debajo del texto que indica ¿No encuentra lo que busca? . Una vez que se abra el Instalador de Visual Studio, elija la carga de trabajo de desarrollo de escritorio de .NET y luego haga clic en el botón Modificar.

    Screenshot showing the Create a new project window with the 'Install more tools and features' link highlighted.

  1. En el menú contextual que aparece al hacer clic con el botón derecho en Solución "QuickSolution" en el Explorador de soluciones, seleccione Agregar>Nuevo proyecto.

    Se abre un cuadro de diálogo de nombre Agregar un nuevo proyecto.

  2. Escriba el texto vacío en el cuadro de búsqueda de la parte superior y, luego, seleccione Visual Basic en la lista desplegable Todos los lenguajes.

  3. Seleccione la plantilla Proyecto vacío (.NET Framework) y luego Siguiente.

  4. Asigne el nombre QuickDate al proyecto y luego seleccione Crear.

    Un proyecto denominado QuickDate aparece debajo de la solución en el Explorador de soluciones. Actualmente solo contiene un archivo denominado App.config.

    Nota

    Si no ve la plantilla Proyecto vacío (.NET Framework), tiene que instalar la carga de trabajoDesarrollo de escritorio de .NET de Visual Studio. Visual Studio usa la instalación basada en la carga de trabajo para instalar únicamente los componentes necesarios para el tipo de desarrollo que lleva a cabo. Una manera fácil de instalar una nueva carga de trabajo al crear un nuevo proyecto es seleccionar el vínculo Instalar más herramientas y características debajo del texto que indica ¿No encuentra lo que busca? . Una vez que se abra el Instalador de Visual Studio, elija la carga de trabajo de desarrollo de escritorio de .NET y luego haga clic en el botón Modificar.

    Screenshot showing the Create a new project window with the 'Install more tools and features' link highlighted.

Agregar un elemento al proyecto

Hay un proyecto vacío. Vamos a agregar un archivo de código.

  1. En el menú contextual que aparece al hacer clic con el botón derecho en el proyecto QuickDate del Explorador de soluciones, elija Agregar>Nuevo elemento.

    Se abrirá el cuadro de diálogo Agregar nuevo elemento.

  2. Expanda Elementos comunes y elija Código. En el panel central, seleccione la plantilla de elemento Clase. Ponga el nombre Calendar a la clase y luego haga clic en el botón Agregar.

    Un archivo denominado Calendar.vb se agrega al proyecto. El fragmento .vb del final es la extensión de archivo de los archivos de código de Visual Basic. El archivo aparece en la jerarquía visual del proyecto en el Explorador de soluciones y su contenido se abre en el editor.

  3. Reemplace el contenido del archivo Calendar.vb por el siguiente código:

    Class Calendar
        Public Shared Function GetCurrentDate() As Date
            Return DateTime.Now.Date
        End Function
    End Class
    

    La clase Calendar contiene una sola función, GetCurrentDate, que devuelve la fecha actual.

  4. Abra las propiedades del proyecto haciendo doble clic en Mi proyecto en el Explorador de soluciones. En la pestaña Aplicación, cambie Tipo de aplicación por Biblioteca de clases. Este paso es necesario para compilar el proyecto correctamente.

  5. Compile el proyecto haciendo clic con el botón derecho en QuickDate en el Explorador de soluciones y seleccionando Compilar. Debería aparecer un mensaje de compilación correcta en la ventana Resultados.

Agregar un segundo proyecto

Es común que las soluciones contengan más de un proyecto y, a menudo, estos proyectos se hacen referencia entre sí. Algunos proyectos de una solución pueden ser bibliotecas de clases; otros, aplicaciones ejecutables, y otros, proyectos de prueba unitaria o sitios web.

Vamos a agregar un proyecto de prueba unitaria a la solución. Esta vez se empieza a partir de una plantilla de proyecto, así que no es necesario agregar otro archivo de código al proyecto.

  1. En el menú contextual que aparece al hacer clic con el botón derecho en Solución "QuickSolution" en el Explorador de soluciones, seleccione Agregar>Nuevo proyecto.
  1. En el cuadro de diálogo Agregar un nuevo proyecto, escriba el texto prueba unitaria en el cuadro de búsqueda de la parte superior y luego seleccione Visual Basic en Lenguaje.

  2. Seleccione la plantilla de proyecto Proyecto de prueba unitaria (.NET Framework) y luego seleccione Siguiente.

  3. Asigne el nombre QuickTest al proyecto y luego seleccione Crear.

    Se agregará un segundo proyecto al Explorador de soluciones, mientras que un archivo denominado UnitTest1.vb se abre en el editor.

  1. En el cuadro de diálogo Agregar un nuevo proyecto, escriba el texto prueba unitaria en el cuadro de búsqueda de la parte superior y, luego, seleccione Visual Basic en la lista desplegable Todos los lenguajes.

  2. Seleccione la plantilla de proyecto Proyecto de prueba unitaria (.NET Framework) y luego seleccione Siguiente.

  3. Asigne el nombre QuickTest al proyecto y luego seleccione Crear.

    Se agregará un segundo proyecto al Explorador de soluciones, mientras que un archivo denominado UnitTest1.vb se abre en el editor.

Agregar una referencia de proyecto

Usaremos el nuevo proyecto de prueba unitaria para probar nuestro método en el proyecto QuickDate, por lo que necesitamos agregar una referencia a ese proyecto. La referencia crea una dependencia de compilación entre ambos proyectos, lo que significa que, al compilar la solución, QuickDate se compila antes que QuickTest.

  1. Seleccione el nodo Referencias en el proyecto QuickTest y, en el menú contextual que aparece al hacer clic con el botón derecho, seleccione Agregar referencia.

    Screenshot showing the context menu for the References node in the QuickTest project, with the 'Add Reference' option selected.

    Se abre el cuadro de diálogo Administrador de referencias.

  2. En el panel izquierdo, expanda Proyectos y elija Solución. En el panel central, active la casilla junto a QuickDate y, después, seleccione el botón Aceptar.

    Se agrega una referencia al proyecto QuickDate.

  1. Seleccione el nodo Referencias en el proyecto QuickTest y, en el menú contextual que aparece al hacer clic con el botón derecho, seleccione Agregar referencia.

    Screenshot showing the context menu for the References node in the QuickTest project, with the 'Add Reference' option selected.

    Se abre el cuadro de diálogo Administrador de referencias.

  2. En el panel izquierdo, expanda Proyectos y elija Solución. En el panel central, active la casilla junto a QuickDate y, después, seleccione el botón Aceptar.

    Se agrega una referencia al proyecto QuickDate.

Agregar código de prueba

  1. Ahora vamos a agregar código de prueba al archivo de código de Visual Basic. Reemplace el contenido del archivo UnitTest1.vb por el siguiente código.

    <TestClass()> Public Class UnitTest1
    
        <TestMethod()> Public Sub TestGetCurrentDate()
            Assert.AreEqual(Date.Now.Date, QuickDate.Calendar.GetCurrentDate())
        End Sub
    
    End Class
    

    Se ve una línea ondulada de color rojo debajo de algunas partes del código. Solucionaremos este error cuando convirtamos el proyecto de prueba en un ensamblado de confianza del proyecto QuickDate.

  2. En el proyecto QuickDate, abra el archivo Calendar.vb, si aún no está abierto, y agregue la siguiente instrucción Imports y el atributo InternalsVisibleToAttribute para resolver el error en el proyecto de prueba.

    Imports System.Runtime.CompilerServices
    
    <Assembly: InternalsVisibleTo("QuickTest")>
    

    El archivo de código debe tener este aspecto:

    Screenshot showing the code for Calendar.vb in the Visual Basic code editor window, after the Imports statement and Assembly attribute lines have been added.

  1. Ahora vamos a agregar código de prueba al archivo de código de Visual Basic. Reemplace el contenido del archivo UnitTest1.vb por el siguiente código.

    <TestClass()> Public Class UnitTest1
    
        <TestMethod()> Public Sub TestGetCurrentDate()
            Assert.AreEqual(Date.Now.Date, QuickDate.Calendar.GetCurrentDate())
        End Sub
    
    End Class
    

    Se ve una línea ondulada de color rojo debajo de algunas partes del código. Solucionaremos este error cuando convirtamos el proyecto de prueba en un ensamblado de confianza del proyecto QuickDate.

  2. En el proyecto QuickDate, abra el archivo Calendar.vb, si aún no está abierto, y agregue la siguiente instrucción Imports y el atributo InternalsVisibleToAttribute para resolver el error en el proyecto de prueba.

    Imports System.Runtime.CompilerServices
    
    <Assembly: InternalsVisibleTo("QuickTest")>
    

    El archivo de código debe tener este aspecto:

    Screenshot showing the code for Calendar.vb in the Visual Basic code editor window after the Imports statement and Assembly attribute lines have been added.

Propiedades de proyecto

La línea del archivo Calendar.vb que contiene el atributo InternalsVisibleToAttribute hace referencia al nombre de ensamblado (nombre de archivo) del proyecto QuickTest. El nombre del ensamblado no siempre es el mismo que el nombre del proyecto. Para averiguar el nombre del ensamblado de un proyecto, abra las propiedades del proyecto.

  1. En el Explorador de soluciones, seleccione el proyecto QuickTest. En el menú contextual que se abre al hacer clic con el botón derecho, seleccione Propiedades o, simplemente, presione Alt+ENTRAR. (También puede hacer doble clic en Mi proyecto en el Explorador de soluciones).

    Las páginas de propiedades del proyecto se abren en la pestaña Aplicación. Las páginas de propiedades contienen varios valores para el proyecto. Fíjese en que el nombre de ensamblado del proyecto QuickTest es, efectivamente, "QuickTest". Si quisiera cambiar el nombre del ensamblado, aquí es donde lo haría. Así, al compilar el proyecto de prueba, el nombre del archivo binario resultante cambiaría de QuickTest.dll a lo que hubiera elegido.

    Screenshot showing the Application tab of the property pages for the QuickTest project. The Assembly name field is highlighted and the value is 'QuickTest'.

  2. Explore algunas de las otras pestañas de las páginas de propiedades del proyecto, como Compilar y Configuración. Estas pestañas son diferentes para los distintos tipos de proyectos.

La línea del archivo Calendar.vb que contiene el atributo InternalsVisibleToAttribute hace referencia al nombre de ensamblado (nombre de archivo) del proyecto QuickTest. El nombre del ensamblado no siempre es el mismo que el nombre del proyecto. Para averiguar el nombre del ensamblado de un proyecto, abra las propiedades del proyecto.

  1. En el Explorador de soluciones, seleccione el proyecto QuickTest. En el menú contextual que se abre al hacer clic con el botón derecho, seleccione Propiedades o, simplemente, presione Alt+ENTRAR. (También puede hacer doble clic en Mi proyecto en el Explorador de soluciones).

    Las páginas de propiedades del proyecto se abren en la pestaña Aplicación. Las páginas de propiedades contienen varios valores para el proyecto. Fíjese en que el nombre de ensamblado del proyecto QuickTest es, efectivamente, "QuickTest". Si quisiera cambiar el nombre del ensamblado, aquí es donde lo haría. Así, al compilar el proyecto de prueba, el nombre del archivo binario resultante cambiaría de QuickTest.dll a lo que hubiera elegido.

    Screenshot showing the Application tab of the property pages for the QuickTest project. The Assembly name field is highlighted and the value is 'QuickTest'.

  2. Explore algunas de las otras pestañas de las páginas de propiedades del proyecto, como Compilar y Configuración. Estas pestañas son diferentes para los distintos tipos de proyectos.

(Opcional) Ejecutar la prueba

Si quiere comprobar que la prueba unitaria funciona, seleccione Probar>ejecutar>Todas las pruebas desde la barra de menús. Se abre una ventana denominada Explorador de pruebas, donde debería ver que la prueba TestGetCurrentDate se supera.

Screenshot of the Test Explorer in Visual Studio showing that the TestGetCurrentDate test passed.

Sugerencia

Si la ventana Explorador de pruebas no se abre automáticamente, ábrala al elegir Prueba>Windows>Explorador de pruebas en la barra de menús.

Si quiere comprobar que la prueba unitaria funciona, seleccione Probar>Ejecutar todas las pruebas desde la barra de menús. Se abre una ventana denominada Explorador de pruebas, donde debería ver que la prueba TestGetCurrentDate se supera.

Screenshot of the Test Explorer in Visual Studio showing that the TestGetCurrentDate test passed.

Sugerencia

Si la ventana Explorador de pruebas no se abre automáticamente, ábrala al elegir Prueba>Windows>Explorador de pruebas en la barra de menús.

Pasos siguientes

Si desea seguir explorando Visual Studio, considere la posibilidad de crear una aplicación siguiendo uno de los tutoriales de Visual Basic.

Consulte también