Saúl Marcelo Sánchez Santacruz
Luis Arturo Cruz Cruz
Luis Arturo Cruz Cruz
Conocer los comandos fundamentales de la CLI de .NET y saber organizar un proyecto desde el inicio marca la diferencia entre escribir código que funciona y construir software mantenible. Aquí se desglosan los comandos esenciales, la estructura de carpetas recomendada y la configuración de metadatos que todo desarrollador en C# necesita dominar.
¿Qué comandos de la CLI de .NET debes conocer primero?
La CLI (Command Line Interface) de .NET es la herramienta principal para interactuar con el ecosistema desde la terminal. Antes de escribir una sola línea de código, conviene verificar el entorno de trabajo con estos comandos:
dotnet --version: muestra la versión instalada del SDK, ideal para confirmar compatibilidad con un proyecto. [00:17]dotnet --info: despliega información completa del runtime, sistema operativo y arquitectura. [00:26]dotnet new list: lista todas las plantillas disponibles para crear proyectos. [00:35]Las plantillas o templates son estructuras predefinidas de archivos que .NET genera automáticamente según el tipo de aplicación. No solo existe console; también están classlib para bibliotecas de clases, webapi para servicios REST, blazor para interfaces web y maui para aplicaciones multiplataforma. Cada una produce una estructura de archivos optimizada para su propósito. [00:44]
¿Cuál es la diferencia entre build y run?
Estos dos comandos se confunden con frecuencia, pero cumplen roles distintos:
dotnet build: solo compila el proyecto y genera los archivos en la carpeta bin. No ejecuta nada. Es útil cuando quieres verificar que el código compila correctamente sin lanzar la aplicación. [01:02]dotnet run: compila y ejecuta el programa en un solo paso.Al ejecutar dotnet build, la terminal confirmó que el proceso se completó en fracciones de segundo, generando el archivo InventarioApp.dll dentro de bin/debug/net10. [01:17]
¿Cómo organizar la estructura de un proyecto en .NET?
Un proyecto funcional pero desorganizado genera problemas a medida que crece. La recomendación profesional es crear una carpeta src (abreviatura de source) que almacene todo el código fuente. [01:35]
Otras carpetas habituales en proyectos bien estructurados:
test: contiene las pruebas automatizadas.docs: almacena la documentación del proyecto.¿Qué metadatos se configuran en el archivo .csproj?
El archivo .csproj es el corazón de cualquier proyecto .NET. Dentro del bloque PropertyGroup se definen los metadatos clave: [01:50]
AssemblyName: nombre del ejecutable generado.RootNamespace: el namespace raíz que organiza todo el código.Version: versión actual del proyecto, por ejemplo 1.0.0.0.Description: descripción breve de la funcionalidad.Un namespace funciona como una carpeta, pero para código. Su propósito principal es evitar conflictos entre nombres de clases cuando un proyecto crece o utiliza múltiples bibliotecas. [02:23]
¿Cómo leer metadatos del .csproj desde el código?
Para verificar que la configuración y el código trabajan en conjunto, se puede usar Assembly.GetExecutingAssembly() desde la librería System.Reflection, que se importa automáticamente al escribir la instrucción. [02:34]
Este método permite leer en tiempo de ejecución la versión configurada en el .csproj y mostrarla con Console.WriteLine. Al ejecutar dotnet run, la consola imprimió 1.0.0.0, confirmando que metadatos y código están sincronizados. [03:06]
Un detalle importante: la versión debe seguir el formato de versionado semántico con valores numéricos. Al reemplazar los números por letras de forma deliberada y ejecutar dotnet run, el programa falló inmediatamente. Restaurar el formato correcto (1.0.0.0) resolvió el error. [03:25]
¿Por qué importa el orden de las instrucciones en C#?
Como ejercicio práctico, se presentó un bloque de código desordenado cuya solución correcta sigue esta secuencia: [04:06]
El orden de ejecución no es opcional: en programación, cada línea depende de lo que se declaró antes. Saltarse este principio produce errores de compilación o comportamientos inesperados.
Si ya dominas estos comandos y la estructura básica, el siguiente paso natural es incorporar control de versiones para proteger cada avance del proyecto. ¿Qué comando de la CLI te resultó más útil? Comparte tu experiencia.
Saúl Marcelo Sánchez Santacruz
Luis Arturo Cruz Cruz
Luis Arturo Cruz Cruz
Cristhian Alexis Vera Sandoval
DAYAN MANRIQUE
Cristhian Alexis Vera Sandoval
Gerardo Nuñez
luis fernando
luis fernando
Raymundo Torres Díaz
Andres Felipe Correa Villa
Cesar Bautista Mejia
wilkin trinidad
Carlos Daniel Cárcamo Sepúlveda
Carlos Daniel Cárcamo Sepúlveda
Lautaro Martinez
📝Mis apuntes de la clase:
¿Por qué este sujeto no tiene más likes?
Muchas gracias.
// ============================================================
// SISTEMA DE INVENTARIO - Clase 1.1
// Estado: Mensaje de bienvenida
// ============================================================
using System.Reflection; // Importar el espacio de nombres para trabajar con ensamblados
var assembly = Assembly.GetExecutingAssembly(); // Obtener información del ensamblado actual
var version = assembly.GetName().Version; // Obtener la versión del ensamblado
Console.WriteLine("==========================================");
Console.WriteLine(" SISTEMA DE GESTIÓN DE INVENTARIO ");
Console.WriteLine("==========================================");
Console.WriteLine();
Console.WriteLine($"Versión del sistema: {version}");
Console.WriteLine($"Plataforma: {Environment.OSVersion}");
Console.WriteLine($".NET Version: {Environment.Version}");
Console.WriteLine();
Console.WriteLine("Estructura del proyecto:");
Console.WriteLine("Configuracion .csproject: Define el proyecto y sus dependencias.");
Console.WriteLine("Carpeta src/ creada para organizar el código fuente.");
Console.WriteLine("Metadatos configurados");
Console.WriteLine();
Console.WriteLine("Proximos pasos: Agregar argumentos CLI yy configuración del repositorio en GitHub");
Heroe sin capa
quiero parte del codigo que implemento el profe en la clases me ayudas con eso
¡Claro, Cristhian! En esta clase nos enfocamos en configurar el archivo .csproj para gestionar los metadatos de tu proyecto.
Aquí tienes la estructura base que usamos para los metadatos dentro del PropertyGroup:
<AssemblyName>InventarioApp</AssemblyName> <RootNamespace>InventarioApp</RootNamespace> <Version>1.0.0.0</Version> <Description>Descripción de tu proyecto</Description>
¿Qué crees que sucedería si intentaras cambiar el AssemblyName mientras el programa está en ejecución?
No pasara nada ya que el ultimo Assembly Name que fue compilado sera el que tendra en nombre del programa o dll, se debe modificar previo a compliar una vez ya compliado no cambia.
CLI - Command Line Interface
build - Solo compila
run - compila y ejecuta
El CLI es una herramienta más que complementaría para el desarrollo en .NET, nos sirve para
Normalmente uso Visual Studio 2022 y esto ejecuta todo por medio de botones pero es importante estar familiarizado con los comandos propios de .NET.
De echo, con cualquier visual studio (a excepcion de vs code)
Apuntes de mi clase
AssemblyName: nombre del ejecutable generado.RootNamespace: el namespace raíz que organiza todo el código.Version: versión actual del proyecto, por ejemplo 1.0.0.0.Description: descripción breve de la funcionalidad.El. Dotnet build lo que realiza es la compilación del proyecto
Lo que hace es compilar el proyecto
.Net CLI documentación oficial