Como empezar a desarrollar en .NET fuera del ecosistema de Windows

El día de hoy traigo una información útil que me ha servido al momento de querer desarrollar en ecosistema de .NET fuera del sistema operativo Windows, ya que mucho de dicho ecosistema esta pensado en instalarse con asistentes desde su IDE Visual Studio en cualquiera de sus versiones que incluyan el SDK. 

En mi caso en particular uso el ecosistema de Apple para mis proyectos fuera y dentro de las empresas desde hace 6 años y puedo decir que al principio es algo molesto trabajar ahí ya que Microsoft tiene todo muy accesible para empezar a trabajar y al migrar esto ya no aplica mucho ya que la empresa no tiene instaladores basado en asistentes en todas sus herramientas fuera de Windows o al menos un IDE que concentre todas las herramientas necesarias esto para la fecha del 2025-2026.  

1) .NET SDK

Para qué sirve
Es la base para crear, compilar, ejecutar y publicar proyectos .NET.
En Mac OS debes instalar el SDK, no solo el runtime. Microsoft mantiene las descargas oficiales para Mac OS y publica las versiones soportadas desde su página oficial.

Dónde descargar
Descárgalo desde la página oficial de .NET para Mac OS, te adjunto el  Link oficial de Dotnet


Qué recomiendo instalar

  • La versión LTS de .NET para trabajo estable 
  • Si pruebas cosas nuevas, además puedes instalar la versión más reciente soportada, pero para entorno principal mejor LTS.




con esto te desacargara un instalador para Mac con un asistente en que usted dara siguiente como en windows, pero cabe recordar que es solo el SDK de dotnet no es un IDE como Visual Studio 2017 o superiores, es decir solo responde a comando desde la terminal del Mac o un app equivalente.

Comandos útiles para empezar a practicar y una imagen para que veas el como trabaja realmente

dotnet --info
dotnet --list-sdks
dotnet --list-runtimes
dotnet new console -n DemoApp
cd DemoApp
dotnet run

Terminal


Actualizar
Normalmente descargas el nuevo instalador oficial y lo ejecutas. Microsoft publica las versiones soportadas en su portal de descargas.

Verificación rápida

dotnet --version

2) Visual Studio Code

Para qué sirve
Será tu editor principal. VS Code está disponible oficialmente para macOS y además soporta auto-update esto quiere decir que te indicara si hay actualizaciones disponibles desde el momento que arranques el editor, realmente es muy sencillo y te olvidas de los comandos (por un tiempo).

Dónde descargar
Desde la página oficial de Visual Studio Code para Mac OS. Debes elegir la versión correcta para tu equipo te adjunto el link Visual Studio Code




Si ya conoces el entorno de VS Code en windows ya sabras que extensiones usar,  pero qué instalar como extensiones y para que son dentro de VS Code:

  • C# Dev Kit: C# Dev Kit lo ayuda a administrar su código con un explorador de soluciones y probarlo con descubrimiento y ejecución de pruebas unitarias integradas, elevando su experiencia de desarrollo de C# donde quiera que desarrolle (Windows, macOS, Linux e incluso en un Codespace). La documentación oficial de .NET incluso recomienda VS Code con C# Dev Kit para una buena experiencia en macOS.

  • C#: Una extensión de Visual Studio Code que proporciona compatibilidad con lenguajes enriquecidos para C# y se envía junto con el kit de desarrollo de C#. Impulsada por un servidor Language Server Protocol (LSP), esta extensión se integra con componentes de código abierto como Roslyn y Razor para proporcionar información tipográfica enriquecida y una experiencia C# más rápida y confiable.

  • .Net Install Tool: Esta extensión proporciona una forma unificada para que otras extensiones, como C# y C# Dev Kit, instalen versiones locales de .NET Runtime y versiones para toda la máquina del .NET SDK. Esas extensiones le indican a la herramienta de instalación de .NET cuándo les gustaría que haya un SDK de .NET en la máquina, y les instalamos uno si aún no hay uno que coincida con el SDK que necesitan para ejecutarse correctamente. Los usuarios también pueden instalar ellos mismos el SDK de .NET leyendo a continuación.

  • .Net Maui: La extensión .NET Multi-platform App UI (MAUI) brinda las herramientas que necesita para crear aplicaciones multiplataforma atractivas y de alto rendimiento en cualquier lugar donde escriba código. Está construido sobre las extensiones C# y C# Dev Kit, que potencian su desarrollo .NET con el potente IntelliSense, un Explorador de soluciones intuitivo, administración de paquetes y más. Esta extensión agrega más funciones para los desarrolladores de .NET que crean aplicaciones multiplataforma.




3) Git

Para qué sirve
Control de versiones. Es indispensable para ramas, commits, merges, repos remotos y trabajo con GitHub. Creare un post donde señale buenas practicas basicas, como tener un buen flujo de trabajo, como colaborar sin tener conflictos, etc. algo útil para no tener problemas al momento de trabajar solo o en equipo.

Dónde descargar
La descarga oficial y la guía oficial para Mac OS están en el sitio de Git. Git también documenta que en Mac OS puede instalarse mediante instalador,  dicho instalador es con asistente para comodidad.

Git

Ahora adjunto los comando iniciales para usarlos antes de comenzar a hacer versiones.

Configuración inicial

git --version
git config --global user.name "Tu Nombre"
git config --global user.email "tu-correo@ejemplo.com"
git config --global init.defaultBranch main
git config --global pull.rebase false
git config --global core.editor "code --wait"

Comandos útiles

git init
git status
git add .
git commit -m "Primer commit"
git branch
git checkout -b feature/mi-rama
git remote -v
git pull
git push


4) Docker Desktop

Para qué sirve
Para contenedores, bases de datos locales, pruebas de microservicios, ambientes reproducibles y docker compose. Docker mantiene instalador oficial para Mac con variantes para Apple Silicon e Intel.

Dónde descargar
Desde Docker Desktop oficial para Mac OS


Docker Desktop

Alguno comando que son útiles para usar Docker, por lo general la configuración viene cuando cargas una sesión con cuenta de Docker. sin embargo no es necesario cofigurar algo adicional a cargar la cuenta.

Comandos útiles

docker --version
docker compose version
docker ps
docker images
docker pull mcr.microsoft.com/dotnet/sdk:latest
docker run hello-world



Levantar un servicio con compose

docker compose up -d
docker compose down

Actualizar
Normalmente Docker Desktop avisa y permite actualizar desde la app. También su documentación oficial explica instalación y actualización en Mac.

Verificación rápida

docker --version
docker compose version

5) Verificación final del entorno

Cuando termines, prueba esto en terminal:

dotnet --info
code --version
git --version
docker --version
docker compose version

Y luego una prueba mínima de .NET:

mkdir prueba-dotnet
cd prueba-dotnet
dotnet new webapi
dotnet build
dotnet run

Si eso corre bien, ya tienes un entorno bastante sano para trabajar APIs y backend en .NET. Con esto, ya tienes como comenzar en cuanto tus herramientas basicas para crear y ejecutar una aplicación en Mac OS, faltan los complementos para para terminar para estar completo para realmente ser multiplataforma.  De momento solo veras un resultado visible al ejecutar una API y ejecutar en modo Build una app mobile (como mencione ya es un hecho que tienes lo basico).

Complementos para tener desarrollo multiplataforma

Hasta aquí ya hay una base para trabajar pero a partir de ahora necesitamos unas herramientas para poder hacer compilaciones, liberaciones a productivo en ambientes moviles. tienes experiencia en desarrollo móvil sabrás que es necesario instalar los SDK para poder construir una app y hacer pruebas en caso de windows solo instalas Android Studio y ya esta listo el IDE de VS lo resuelveen las instalaciones y sus asistentes en el caso de Mac OS es un similar sin embargo hay otros pasos que hay que hacer ya que no tenemos un IDE oficial de Microsoft.
   

1) Xcode

Para qué sirve
Es obligatorio para desarrollar, compilar y ejecutar apps de iOS en Mac. Apple también distribuye ahí los simuladores de iPhone/iPad. Xcode es la herramienta oficial para Apple platforms, y los simuladores vienen como parte de Xcode.

Dónde descargar
Desde la Mac App Store o desde el portal oficial de Apple para Xcode.


Notas importantes

  • Para probar iOS en simulador, necesitas Xcode instalado.
  • La compatibilidad de Xcode depende de tu versión de macOS. Apple publica la tabla oficial de requisitos.

Comandos útiles

xcodebuild -version
xcrun simctl list devices

Configuración útil

sudo xcode-select -s /Applications/Xcode.app/Contents/Developer
sudo xcodebuild -license accept

Verificación rápida

xcodebuild -version


2) Android Studio

Para qué sirve
Aunque desarrolles en .NET, para Android en Mac te conviene tener Android Studio porque instala y administra:

  • Android SDK
  • build-tools
  • platform-tools
  • emuladores
  • AVD Manager

Google lo mantiene oficialmente para macOS y recomienda el emulador como método preferido para pruebas, eso no significa que no puedas usar un dispositivo fisico para hacer tus pruebas sin embargo solo es de acordarse tener en cuenta la recomendación. 

Dónde descargar
Desde la página oficial de Android Studio para macOS. Hay descarga para Mac with Apple chip y Mac with Intel chip.

Comandos útiles

adb --version
emulator -version

Verificación rápida

adb devices

Notas

  • Aunque VS Code sea tu editor, Android Studio sigue siendo muy útil para instalar SDKs y crear emuladores.
  • Si vas a trabajar móvil de forma seria, esta herramienta prácticamente es parte del entorno base.


3) .NET MAUI workload

Para qué sirve
Si tu desarrollo móvil será con .NET MAUI, no basta con instalar el SDK de .NET. También necesitas los workloads de MAUI. La documentación oficial de .NET MAUI confirma que MAUI está pensado para Android, iOS, macOS y Windows, y que en VS Code se usa junto con su extensión específica.

Dónde se obtiene
No se descarga aparte como app. Se instala desde terminal usando dotnet.

Comandos útiles

dotnet workload list
dotnet workload install maui
dotnet workload restore

Crear proyecto de prueba

dotnet new maui -n MiAppMaui
cd MiAppMaui
dotnet build

Actualizar workloads

dotnet workload update

Verificación rápida

dotnet workload list

5) JDK para Android

Para qué sirve
El ecosistema Android necesita Java para varias tareas del toolchain. Una opción estable y muy usada es Temurin OpenJDK. Adoptium mantiene descargas oficiales para macOS en Apple Silicon e Intel.

Dónde descargar
eligiendo JDK para macOS según tu arquitectura.

Qué recomiendo

  • JDK 21 LTS como base moderna y estable, salvo que una guía concreta de tu stack exija otra versión. JDK 21 LTS




Verificación rápida

java -version
javac -version

6) Android SDK command-line tools

Para qué sirve
A veces Android Studio instala esto por ti, pero conviene entender que son parte real del entorno Android:

  • sdkmanager
  • avdmanager
  • adb

Con eso puedes instalar plataformas, aceptar licencias y automatizar setup desde terminal.

Comandos útiles

sdkmanager --list
sdkmanager --licenses
avdmanager list device
adb devices

Casos típicos

sdkmanager "platform-tools" "platforms;android-35" "build-tools;35.0.0"

La versión exacta cambia con el tiempo, así que conviene elegir la que tengas disponible en tu SDK Manager.


7) Simuladores y emuladores

iOS Simulator

Para crear tus emuladores, ver las colecciones y ver los dispositivos que detecta el IDE de Apple, es de irce a menu "Windows" en el submenu "Devices and Simulators" ahí esta la ventana de configuración y ac tivacion de los entornos para tus pruebas de ejecuciones, se usa para correr apps iOS/iPadOS en Mac. Apple lo documenta como parte del flujo normal para ejecutar apps en simulador o dispositivo.


Comando útil para ver tu lista de simuladores

xcrun simctl list

Android Emulator

Se administra normalmente desde Android Studio y Google lo recomienda para probar distintas configuraciones de dispositivos y versiones de Android pero primero hay que instalar los SDKs correspondientes, en mi caso use los que estan seleccionados en las imagenes tanto en la opcion SDK Platforms como en SDK Tools  .





Comandos útiles

emulator -list-avds
adb devices


8) Cuenta de Apple Developer y modo dispositivo real

Para qué sirve
Para usar simulador no siempre necesitas todo el flujo de publicación, pero para firmar, probar mejor en dispositivo físico y eventualmente publicar en App Store, entrarás al ecosistema Apple Developer. Apple centraliza eso alrededor de Xcode y sus herramientas de firma/distribución.

Nota práctica

  • Para aprendizaje inicial puedes empezar con simulador.
  • Para distribución real, esta parte se vuelve necesaria.


9) Qué cambia si desarrollas móvil con VS Code en Mac

Tu entorno ya no sería solo:

  • .NET SDK
  • VS Code
  • Git
  • Docker

Ahora para móvil quedaría mejor así:

Base general

  • Git
  • .NET SDK
  • VS Code
  • Docker Desktop

Extra para móvil

  • Xcode
  • Android Studio
  • JDK
  • .NET MAUI workload
  • Extensión .NET MAUI para VS Code
  • Android SDK / Emulator


10) Verificación final del entorno móvil

con esto ya podemos hacer un recorrido de lo instalado para su uso ya para desarrollar web, moviles y computadoras personales, como se puede observar el hecho de trabajar sin un IDE como VS de windows se trabaja mas con la consola del sistema operativo para productividad apenas es el primer paso, ahora a ejecutar la siguiente lista de comandos:

dotnet --info

dotnet workload list
xcodebuild -version
xcrun simctl list devices
java -version
adb --version
adb devices
emulator -list-avds

Con esto el ambiente de trabajo básico debe estar listo para la hora de la verdad, puede que algunos comando no funcionen en especifico los emuladores eso quiere decir que no hay emuladores activos y hay que configurarlos en caso de estar activos simplemente no responde pues e de decirte que habrá que configurar de nuevo, de mientras VS Code reconoce los emuladores para ejecutar las app moviles.  





Comments

Popular posts from this blog

Introducción al diario