Cómo crear una aplicación de tareas con .NET MAUI

Cómo crear una aplicación de tareas con .NET MAUI

El desarrollo multiplataforma se ha convertido en una prioridad para muchas empresas que desean ofrecer aplicaciones para Android, iOS, Windows y macOS sin mantener varios proyectos diferentes. Con .NET MAUI (Multi-platform App UI) puedes desarrollar una sola aplicación utilizando C# y XAML, compartiendo gran parte del código y reduciendo significativamente el tiempo de desarrollo.

En este artículo aprenderás cómo crear una aplicación de gestión de tareas (To-Do App) utilizando .NET MAUI siguiendo buenas prácticas.

¿Qué es .NET MAUI?

.NET MAUI es la evolución de Xamarin.Forms y forma parte del ecosistema oficial de Microsoft. Permite desarrollar aplicaciones nativas para múltiples plataformas desde un único proyecto.

Entre sus principales ventajas destacan:

  • Un solo código para varias plataformas.
  • Excelente integración con Visual Studio.
  • Alto rendimiento.
  • Soporte para MVVM.
  • Integración con Entity Framework Core, SQLite y servicios REST.

Crear el proyecto

Desde Visual Studio selecciona:

Crear nuevo proyecto → .NET MAUI App

También puedes hacerlo desde la terminal:

dotnet new maui -n TaskManager

Al ejecutar el proyecto tendrás una aplicación funcional lista para comenzar el desarrollo.

Diseñar el modelo

Crea una carpeta Models y agrega la clase TaskItem.

public class TaskItem
{
    public int Id { get; set; }

    public string Title { get; set; }

    public bool Completed { get; set; }
}

Este modelo almacenará la información básica de cada tarea.

Crear el ViewModel

Utilizar el patrón MVVM facilita la separación entre la interfaz y la lógica de negocio.

public class MainViewModel
{
public ObservableCollection Tasks { get; } = new();

public string NewTask { get; set; }

public void AddTask()
{
    if (!string.IsNullOrWhiteSpace(NewTask))
    {
        Tasks.Add(new TaskItem
        {
            Title = NewTask,
            Completed = false
        });

        NewTask = string.Empty;
    }
}

}

Gracias a ObservableCollection, cualquier cambio en la colección se refleja automáticamente en la interfaz.

Crear la interfaz

En MainPage.xaml puedes agregar un Entry, un botón y una lista.

<Entry Placeholder="Nueva tarea"
       Text="{Binding NewTask}" />

<Button Text="Agregar"
        Command="{Binding AddTaskCommand}" />

<CollectionView ItemsSource="{Binding Tasks}">
    <CollectionView.ItemTemplate>
        <DataTemplate>
            <HorizontalStackLayout>
                <CheckBox IsChecked="{Binding Completed}" />
                <Label Text="{Binding Title}" />
            </HorizontalStackLayout>
        </DataTemplate>
    </CollectionView.ItemTemplate>
</CollectionView>

Con apenas unas líneas ya tendrás una aplicación funcional.

Agregar almacenamiento local

Para que las tareas no se pierdan al cerrar la aplicación puedes utilizar SQLite.

Instala el paquete:

dotnet add package sqlite-net-pcl

Luego crea una clase de servicio encargada de guardar, consultar y eliminar tareas.

De esta manera la información permanecerá disponible incluso después de reiniciar la aplicación.

Mejorar la experiencia del usuario

Una aplicación profesional puede incluir características como:

  • Editar tareas.
  • Eliminar tareas mediante gestos.
  • Filtrar tareas completadas.
  • Buscar tareas.
  • Ordenarlas por fecha.
  • Agregar categorías.
  • Modo oscuro.
  • Sincronización con una API.

Estas funcionalidades convierten una aplicación sencilla en una solución mucho más completa.

Aplicar el patrón MVVM

Aunque una aplicación pequeña puede funcionar con código detrás (Code Behind), en proyectos reales es recomendable utilizar MVVM porque ofrece:

  • Mejor organización.
  • Código reutilizable.
  • Mayor facilidad para realizar pruebas.
  • Menor acoplamiento.
  • Escalabilidad.

Además, puedes apoyarte en CommunityToolkit.Mvvm, que reduce considerablemente la cantidad de código necesario para implementar propiedades y comandos.

Publicar la aplicación

Cuando la aplicación esté terminada podrás generar versiones para:

  • Android (.apk o .aab)
  • Windows (.msix)
  • iOS
  • macOS

Todo desde el mismo proyecto MAUI.

.NET MAUI permite desarrollar aplicaciones modernas para múltiples plataformas utilizando C# y un único proyecto. Una aplicación de tareas es un excelente ejercicio para aprender conceptos como MVVM, enlace de datos (Data Binding), colecciones observables, navegación y almacenamiento local con SQLite.

A medida que avances podrás incorporar autenticación, consumo de APIs REST, notificaciones, sincronización en la nube y muchas otras funcionalidades que utilizan las aplicaciones empresariales actuales.

Si ya trabajas con el ecosistema .NET, aprender MAUI es un paso natural para crear aplicaciones móviles y de escritorio de manera eficiente, aprovechando el mismo lenguaje, las mismas herramientas y gran parte del conocimiento que ya posees.

Te puede interesar...

Deja un comentario