Más información sobre proyectos y soluciones mediante Visual Basic
En este artículo introductorio, exploraremos lo que significa crear una solución de y un proyecto de en Visual Studio. Una solución es un contenedor que se usa para organizar uno o varios proyectos de código relacionados, por ejemplo, un proyecto de biblioteca de clases y un proyecto de prueba correspondiente. Veremos las propiedades de un proyecto y algunos de los archivos que puede contener. También crearemos 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.
Construiremos una solución y un proyecto desde cero como un ejercicio educativo para comprender el concepto de un 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
Las soluciones y los proyectos no son necesarios para desarrollar aplicaciones en Visual Studio. También puede abrir una carpeta que contenga código y empezar a codificar, compilar y depurar. Por ejemplo, si clona un repositorio de gitHub, es posible que no contenga proyectos y soluciones de Visual Studio. Para obtener más información, consulte Desarrollo de código en Visual Studio sin proyectos ni soluciones.
Soluciones y proyectos
A pesar de su nombre, una solución no es una "respuesta". Una solución es simplemente un contenedor usado por Visual Studio para organizar uno o varios proyectos relacionados. Al abrir una solución en Visual Studio, carga automáticamente todos los proyectos que contiene la solución.
Creación de una solución
Comenzaremos nuestra exploración mediante la creación de una solución vacía. Después de conocer Visual Studio, probablemente no se encontrará creando soluciones vacías a menudo. Al crear un nuevo proyecto, Visual Studio crea automáticamente una solución para hospedar el proyecto si aún no hay una solución abierta.
Abra Visual Studio.
En la ventana de inicio, elija Crear un nuevo proyecto.
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.
Asigne a la solución el nombre QuickSolutiony, a continuación, elija Crear.
Aparece una solución en el Explorador de soluciones, en el lado derecho de la ventana de Visual Studio. Es probable que vas a usar el Explorador de Soluciones a menudo, para examinar el contenido de tus proyectos.
Abra Visual Studio.
En la ventana de inicio, elija Crear un nuevo proyecto.
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.
Asigne a la solución el nombre QuickSolutiony, a continuación, 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 vamos a agregar nuestro primer proyecto a la solución. Comenzaremos con un proyecto vacío y agregaremos los elementos que necesitamos al proyecto.
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 que indica Agregar un nuevo proyecto.
Escriba el texto vacío en el cuadro de búsqueda de la parte superior y luego seleccione Visual Basic en Lenguaje.
Seleccione la plantilla Proyecto vacío (.NET Framework) y luego elija Siguiente.
Asigne al proyecto el nombre QuickDatey elija Crear.
Un proyecto denominado QuickDate aparece debajo de la solución en Explorador de soluciones. Actualmente contiene un único 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 cargas de trabajo para instalar solo los componentes que necesita para el tipo de desarrollo que haga. Una manera fácil de instalar una nueva carga de trabajo al crear un nuevo proyecto es elegir el Instalar más herramientas y funciones vínculo bajo el texto que dice ¿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.
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 que indica Agregar un nuevo proyecto.
Escriba el texto vacío en el cuadro de búsqueda de la parte superior y, a continuación, seleccione Visual Basic en la lista desplegable Todos Los Idiomas.
Seleccione la plantilla Proyecto vacío (.NET Framework) y luego Siguiente.
Asigne al proyecto el nombre QuickDatey elija Crear.
Un proyecto denominado QuickDate aparece debajo de la solución en Explorador de soluciones. Actualmente contiene un único 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 cargas de trabajo para instalar solo los componentes que necesita para el tipo de desarrollo que haga. Una manera fácil de instalar una nueva carga de trabajo al crear un nuevo proyecto es elegir el enlace Instalar más herramientas y características bajo el texto que dice ¿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.
Agregar un elemento al proyecto
Tenemos un proyecto vacío. Vamos a agregar un archivo de código.
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 abre el cuadro de diálogo Agregar nuevo elemento .
Expanda Elementos comunes y elija Código. En el panel central, elija la plantilla del elemento clase. Asigne un nombre a la clase Calendary, a continuación, elija el botón Agregar.
Se agrega un archivo denominado Calendar.vb al proyecto. El .vb al final es la extensión de archivo que se asigna a los archivos de código de Visual Basic. El archivo aparece en la jerarquía del proyecto visual en Explorador de solucionesy su contenido se abre en el editor.
Reemplace el contenido del archivo Calendar.vb por el código siguiente:
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.Abra las propiedades del proyecto haciendo doble clic en Mi proyecto en 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.
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.
Adición de un segundo proyecto
Es habitual 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, algunas aplicaciones ejecutables y algunas podrían ser proyectos de prueba unitaria o sitios web.
Vamos a agregar un proyecto de prueba unitaria a nuestra solución. Esta vez empezaremos desde una plantilla de proyecto para que no tengamos que agregar un archivo de código adicional al proyecto.
- En el menú contextual o haciendo clic con el botón derecho en la solución 'QuickSolution' en el Explorador de soluciones , elija Agregar Nuevo proyecto>.
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.
Seleccione la plantilla de proyecto Proyecto de prueba unitaria (.NET Framework) y luego seleccione Siguiente.
Asigne al proyecto el nombre QuickTesty elija Crear.
Se agrega un segundo proyecto a explorador de solucionesy se abre un archivo denominado UnitTest1.vb en el editor.
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.
Elija la plantilla de proyecto de prueba unitaria (.NET Framework) y, a continuación, elija Siguiente.
Asigne al proyecto el nombre QuickTesty elija Crear.
Se agrega un segundo proyecto a explorador de solucionesy se abre un archivo denominado UnitTest1.vb en el editor.
Agregar una referencia de proyecto
Vamos a usar el nuevo proyecto de prueba unitaria para probar nuestro método en el proyecto de QuickDate, por lo que es necesario agregar una referencia a ese proyecto. La referencia crea una dependencia de compilación entre los dos proyectos, lo que significa que, al compilar la solución, se compila QuickDate antes de QuickTest.
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.
Se abre el cuadro de diálogo Administrador de referencias.
En el panel izquierdo, expanda Proyectos y elija Solución. En el panel central, marque la casilla situada junto a QuickDatey, a continuación, haga clic en el botón Aceptar.
Se agrega una referencia al proyecto QuickDate.
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.
Se abre el cuadro de diálogo Administrador de referencias.
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.
Adición de código de prueba
Ahora agregaremos código de prueba al archivo de código de Visual Basic. Reemplace el contenido de UnitTest1.vb por el código siguiente.
<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.
Al volver al proyecto QuickDate, abra el archivo Calendar.vb si aún no está abierto y añada 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:
Ahora agregaremos código de prueba al archivo de código de Visual Basic. Reemplace el contenido de UnitTest1.vb por el código siguiente.
<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.
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:
Propiedades del proyecto
La línea del archivo Calendar.vb que contiene el atributo InternalsVisibleToAttribute hace referencia al nombre del ensamblado (nombre de archivo) del proyecto de QuickTest. Es posible que el nombre del ensamblado no siempre sea el mismo que el nombre del proyecto. Para averiguar el nombre del ensamblado de un proyecto, abra las propiedades del proyecto.
En 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 para el proyecto se abren en la pestaña de aplicación . Las páginas de propiedades contienen varias configuraciones para el proyecto. Tenga en cuenta que el nombre del ensamblado del proyecto QuickTest es realmente "QuickTest". Si quisiera cambiar el nombre del ensamblado, aquí es donde lo haría. A continuación, al compilar el proyecto de prueba, el nombre del archivo binario resultante cambiaría de QuickTest.dll a lo que elija.
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 diferentes tipos de proyectos.
La línea del archivo Calendar.vb que contiene el atributo InternalsVisibleToAttribute, hace referencia al nombre del ensamblado (nombre de archivo) del proyecto de QuickTest. Es posible que el nombre del ensamblado no siempre sea el mismo que el nombre del proyecto. Para averiguar el nombre del ensamblado de un proyecto, abra las propiedades del proyecto.
En Explorador de Soluciones, seleccione el proyecto QuickTest. Haga clic con el botón derecho o en el menú contextual, y seleccione Propiedades, o simplemente presione Alt+Enter. (También puede hacer doble clic en Mi proyecto en el Explorador de soluciones).
Las páginas de propiedades para el proyecto se abren en la pestaña de aplicación . Las páginas de propiedades contienen varias configuraciones 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. A continuación, al compilar el proyecto de prueba, el nombre del archivo binario resultante cambiaría de QuickTest.dll a lo que elija.
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 diferentes tipos de proyectos.
(Opcional) Ejecución de 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 y podrá ver que la prueba TestGetCurrentDate se ha superado.
Sugerencia
Si Explorador de Pruebas no se abre automáticamente, ábralo eligiendo Prueba>Windows>Explorador de Pruebas en la barra de menús.
Si desea comprobar si la prueba unitaria está funcionando, elija Prueba>Ejecutar Todas las Pruebas en la barra de menús. Se abre una ventana denominada Explorador de pruebas y debería aparecer que la prueba TestGetCurrentDate ha pasado.
Sugerencia
Si el Explorador de Pruebas no se abre automáticamente, ábralo eligiendo Prueba>Windows>Explorador de pruebas en la barra de menús.
Pasos siguientes
Si desea explorar visual Studio aún más, considere la posibilidad de crear una aplicación siguiendo uno de los tutoriales de Visual Basic.