Esta plantilla proporciona una estructura base para los proyectos de Programación II. Incluye la configuración necesaria para desarrollar aplicaciones en C# con buenas prácticas de programación, pruebas automatizadas y documentación.
¿Qué hay configurado en esta plantilla?
-
Un proyecto de biblioteca (creado con
dotnet new classlib --name Library) en la carpetasrc\Library. -
Un proyecto de aplicación de consola, creado con
dotnet new console --name Program, en la carpetasrc\Program. -
Un proyecto de prueba en NUnit, creado con
dotnet new nunit --name LibraryTests, en la carpetatest\LibraryTests. -
Un proyecto de Doxygen para generación de sitio web de documentación en la carpeta
docs. -
Análisis estático con Roslyn analyzers en los proyectos de biblioteca y de aplicación.
-
Análisis de estilo con StyleCop en los proyectos de biblioteca y de aplicación.
-
Una solución
Project.slnque referencia todos los proyectos de C# y facilita la compilación condotnet build. -
Tareas preconfiguradas para ejecutar las pruebas con cobertura y generar documentación desde VSCode en la carpeta
.vscode. -
Análisis de cobertura de los casos de prueba mediante los indicadores que aparecen en los márgenes con el complemento de Visual Studio Code Coverage Gutters.
-
Ejecución automática de compilación y prueba mediante GitHub Actions configuradas en el repositorio al hacer push o pull request.
Vean este 🎥 video que explica el funcionamiento de la plantilla.
Roslyn Analyzer Warnings (CA*)
StyleCop Analyzer Warnings (SA*)
Las violaciones a estas convenciones son reportadas como warnings al compilar. Aunque recomendamos corregir las violaciones, es posible omitir esta configuración de la siguiente forma:
Comentar las siguientes líneas en los archivos de proyecto (*.csproj)
<EnableNETAnalyzers>true</EnableNETAnalyzers>
<AnalysisMode>All</AnalysisMode>
<EnforceCodeStyleInBuild>true</EnforceCodeStyleInBuild>Comentar la línea <PackageReference Include="StyleCop.Analyzers" Version="1.1.118"/> en los archivos de proyecto (*.csproj)
Es posible usar GitHub Copilot en este repositorio. Consulta cómo usar Copilot para aprender.