.NET MAUI MVVM con Community Toolkit

¿Cómo puedo implementar el patrón MVVM con CommunityToolkit? En el artículo anterior en el que hacía una pequeña introducción al patrón MVVM comenté que había varias formas de implementarlo, una en “crudo” que es la que mostré en dicho artículo y otra por ejemplo la que nos ofrece el Community Toolkit para .NET. En este artículo veremos los pasos necesarios para implementar dicho patrón a través de este llamado “kit de herramientas” e intentaré ir resumiento lo que nos aporta si lo incluímos en nuestro proyecto. La base del código será la misma que en el ejemplo... [Leer más]

.NET MAUI MVVM 101

Introducción ¿Qué es MVVM? Aunque existe muchísima información valiosa en internet sobre el patrón de arquitectura MVVM, me gustaría proporcionar mi visión y definición después de implementarlo en diferentes proyectos personales y empresariales durante bastante tiempo. MVVM, Model-View-ViewModel, es un patrón de diseño que nos facilita la separación de responsabilidades de la logíca de negocio y de la de presentación de una aplicación, permitiendo una mejor mantenibilidad, testeabilidad y escalibilidad de nuestro código. Conviene recordar que es un patrón de diseño por lo que es independiente de los frameworks que utilices para desarrollar tu frontal o aplicación, por... [Leer más]

.NET Workloads 101

Introducción En el post de .NET MAUI 101 expuse algo de info respecto a los workloads que me gustaría ampliar pero conviene recordar lo siguiente. En .NET, un “workload” es un conjunto de herramientas y bibliotecas que se instalan y configuran juntos para permitir el desarrollo de aplicaciones específicas. Los workloads están diseñados para simplificar la instalación y configuración de entornos de desarrollo. Según la documentación oficial, los beneficios de los workloads son: Facilidad de instalación: Se instala todo lo necesario de una sola vez. Consistencia: Se garantiza que todos los desarrolladores trabajan con las mismas herramientas... [Leer más]

.NET MAUI 101

Introducción El pasado 1 de mayo de 20024 acabó oficalmente el soporte de Xamarin Forms por lo que dicho framework no volverá a tener ninguna actualización de seguridad o corrección de errores por lo que el paso “natural” es migrar nuestros proyectos a .NET MAUI. Voy a intentar enumerar las novedades que para mí son más importantes de .NET MAUI respecto a Xamarin Forms. Me refiero a natural en cuanto a no tener que cambiar de stack tecnológico en los diferentes equipos de desarrollo y que podamos contar con la mayor base de código posible. <h2... [Leer más]

Fechas importantes en Xamarin

Fechas importantes en Xamarin Actualmente, como líder técnico en desarrollo de aplicaciones móviles, colaboro con diversos equipos y tecnologías. Trabajo tanto con un equipo de aplicaciones móviles cross-platform (usando Xamarin Forms) como con un equipo de aplicaciones móviles nativas (usando Kotlin). Desde hace un tiempo, he estado preparando la migración de tres proyectos de Xamarin a Microsoft MAUI, los cuales tienen una sólida base de código compartido y por ello me gustaría compartir el tineline que Microsoft presentó hace unos meses sobre este tema. Fue, hace aproximadamente 4 meses (Enero 2025), David Ortinau (.NET Product Manager en Microsoft) <a... [Leer más]

Feature folders with Prism (Xamarin Forms)

Feature folders with Prism - Xamarin Forms This is the english version of my spanish blog post about how to organize our Prism Xamarin Forms project with feature folder. Introduction I’ve been using Prism as MVVM framework in my last business and personal projects and if I have to choose my favorite feature maybe I would choose the ability to extend and customize the default behavior. So, in this case I would like to speak about the way I organize my project with Feature folders. What does it mean? Could I apply it in a... [Leer más]

Feature folders con Prism (Xamarin Forms)

Feature folders con Prism - Xamarin Forms Introducción He estado usando Prism como framework de MVVM en mis últimos proyectos tanto empresariales como personales y si tuviera que elegir algo especial elegiría la capacidad de extender y personalizar su configuración. En este caso me gustaría hablar de como organizar nuestro proyecto mediante Feature folders. ¿En qué consiste? ¿Se puede aplicar en una aplicación de Xamarin Forms con Prism? He estado trabajando como desarrollador de backend durante años y la tendencia una vez que el proyecto empezaba a ser grande era organizarlo mediante Feature folders, es decir, agrupar en... [Leer más]

Firebase Remote Config in Xamarin Forms

Firebase Remote Config in Xamarin Forms This is the english version of my spanish blog post about how to include Firebase Remote Config in our Xamarin Forms applications. Introduction One of the most interesting services offered by Firebase is Remote Config,it is a cloud service that lets you change the behavior and appearance of your app without requiring users to download an app update. When using Remote Config, you create in-app default values that control the behavior and appearance of your app. Then, you can later use the Firebase console or the Remote Config... [Leer más]

Firebase Remote Config en Xamarin Forms

Firebase Remote Config en Xamarin Forms Introducción Uno de los servicios más interesantes que ofrece Firebase es Remote Config, es un servicio en la nube mediante el cual podemos cambiar el comportamiento y aspecto de nuestra aplicación sin necesidad de generar una nueva versión de la app y sin tener que distribuirla. En resumen, creamos unos valores predeterminados en la aplicación que podemos sobreescribirlos mediante este servicio, y como posibles casos de uso: Si queremos activar o desactivar características de la aplicación (este será el ejemplo con el que vamos a hacer este post). Si queremos... [Leer más]

Prism. Auto-register your views/ pages (Xamarin Forms)

Prism. Auto-register your views/ pages This is quick blog post and I want to share with you how I solve a recurrent issue working with Prism and MVVM in a Xamarin Forms project. I’ve working on several teams and projects for years and it’s common to forget register a new Page (we’re humans), or even worst, loose it in a git merge because the conflict is not resolve properly (i.e. team members including new features at the same time). At least in my projects all the Views/ ViewModels are registered in the same way. I know that the... [Leer más]