Definir la aplicación y escribir la primera instrucción

Una primera pregunta útil identifica la tecnología, el comportamiento de la aplicación, las restricciones y la evidencia que mostrará que el trabajo está completo. Esto reduce la posibilidad de que el asistente elija un marco de Windows familiar pero incorrecto.

Comenzar con los criterios de aceptación

Antes de solicitar código, defina lo que espera observar:

  1. El proyecto se compila para x64 sin errores ni advertencias.
  2. La aplicación usa WinUI 3 y Microsoft.UI.Xaml, no UWP y Windows.UI.Xaml.
  3. Un usuario puede agregar, completar y eliminar una tarea.
  4. Las tareas permanecen después de reiniciar la aplicación.
  5. Cada entrada y comando tiene un nombre accesible.
  6. Los comandos permanecen disponibles cuando la ventana está estrecha.
  7. El asistente explica cualquier API que requiera la identidad del paquete o la inicialización de la ventana.

Estos criterios convierten una solicitud amplia en comprobaciones que usted y el asistente pueden realizar.

Concesión de restricciones duraderas al asistente

Abra la carpeta donde mantiene los proyectos de desarrollo, inicie el asistente de codificación de IA y use este mensaje:

Create a C# WinUI 3 desktop app named TaskTally.

Technology constraints:
- Use WinUI 3 and the current stable Windows App SDK.
- Use Microsoft.UI.Xaml namespaces. Don't use UWP, Windows.UI.Xaml,
  WPF, Windows Forms, .NET MAUI, or third-party UI controls.
- Create a packaged app and build for x64.
- Start from the dotnet new winui-mvvm template.
- Use CommunityToolkit.Mvvm for observable properties and commands.

App requirements:
- Show a single-page task list.
- Let the user add, complete, and delete tasks.
- Save tasks as JSON in the app's local storage.
- Use ListView for the collection and InfoBar for save status.
- Include an empty state, keyboard access, accessible names, and a
  layout that works at narrow window widths.

Working agreement:
- First show your implementation plan and the files you will change.
- Make one small, buildable change at a time.
- Build after each change and fix errors before continuing.
- Explain which Learn documentation supports any Windows API choice.
- Don't suppress warnings or replace packaged deployment with an
  unpackaged workaround.

La última sección es importante. Pide al asistente que exponga sus suposiciones y genere puntos de control que sean más fáciles de inspeccionar.

Inspección del plan propuesto

Antes de aprobar las modificaciones, compruebe que el plan incluye:

  • Un modelo para una tarea.
  • Modelo de vista con una colección observable y comandos.
  • Un servicio de almacenamiento.
  • XAML para la página.
  • Una pequeña cantidad de código subyacente para eventos específicos de la vista, si es necesario.
  • Pasos para compilar e iniciar una aplicación WinUI empaquetada.

Pida al asistente que revise su plan si propone una base de datos, inserción de dependencias, varias páginas o controles personalizados. Estas opciones pueden ser válidas en una aplicación más grande, pero agregan conceptos que esta aplicación para principiantes no necesita.

Creación del proyecto

El asistente debe ejecutar comandos equivalentes a:

dotnet new winui-mvvm -n TaskTally
cd TaskTally
dotnet build -p:Platform=x64

Si usa Visual Studio, puede crear un proyecto de WinUI de C# empaquetado y agregar el kit de herramientas de MVVM. Mantenga el nombre del proyecto TaskTally para que los espacios de nombres de este tutorial coincidan.

Note

Una aplicación WinUI empaquetada debe implementarse con su identidad de paquete. Use Visual Studio, dotnet run con las plantillas de WinUI compatibles, o la CLI de winapp. No ejecute directamente el archivo generado .exe.

Inspección del proyecto generado

Preguntar:

Explain the purpose of App.xaml, MainWindow.xaml, MainPage.xaml,
Package.appxmanifest, and TaskTally.csproj. For each file, identify
the WinUI 3 or Windows App SDK setting that proves this isn't a UWP,
WPF, or MAUI project.

Compruebe la explicación usted mismo:

  • El archivo de proyecto contiene <UseWinUI>true</UseWinUI>.
  • El proyecto hace referencia a Microsoft.WindowsAppSDK.
  • El código XAML usa los tipos de Microsoft.UI.Xaml en C#.
  • Package.appxmanifest proporciona la identidad del paquete.
  • El marco de destino incluye Windows, por ejemplo net10.0-windows10.0.26100.0.

Compile la plantilla sin cambios antes de agregar características. Si la línea base no se compila, corrija el problema de creación del entorno o del proyecto antes de pedir al asistente que genere más código.