Home Menu

Menu



Programación y Desarrollo para Android Subforo exclusivo para temas de programación de software para PDAs y desarrollo de aplicaciones, interfaces, etc bajo Android


 
Herramientas
  #1  
Viejo 18/06/17, 06:46:31
Avatar de LEAJIM_454
LEAJIM_454 LEAJIM_454 no está en línea
Miembro del foro
Mensajes: 215
 
Fecha de registro: nov 2012
Mensajes: 215
Modelo de smartphone: Galaxy Ace
Versión de ROM: 2.3.6 Stock
Tu operador: Otra
Mencionado: 1 comentarios
Tagged: 0 hilos
¿Qué ventajas tiene Xamarin frente a Android Studio?

Hola developers, resulta que me entró curiosidad respecto a este asunto, actualmente no soy un desarrollador experto en Java para android Studio y quería saber si sería conveniente aprender a desarrollar en C# y Xamarin, entiendo que la principal ventaja es la multiplataforma gracias a .NET pero ¿Ustedes como lo ven?, serían de mucha ayuda sus opiniones, muchas gracias de antemano.
Responder Con Cita


  #2  
Viejo 18/06/17, 10:29:19
Avatar de mocelet
mocelet mocelet no está en línea
Desarrollador
Mensajes: 2,203
 
Fecha de registro: may 2011
Localización: Madrid
Mensajes: 2,203
Tu operador: -
Mencionado: 17 comentarios
Tagged: 2 hilos
Ventajas, usar un lenguaje concreto en vez de Java o Kotlin que son los lenguajes oficiales. Inconvenientes todos los demás. Lock-in por usar una solución de un tercero, mayor tamaño del APK, bugs que igual no puedes arreglar, poco aprovechamiento de las características nativas de cada plataforma.

Lo de multiplataforma tiene muchos peros, principalmente la interfaz de usuario. Cierto que Xamarin ofrece un API genérico para algunos temas de interfaz pero no es lo mismo que hacerla nativa. Y entonces te da igual qué lenguaje uses porque tendrás que aprender el API de la plataforma concreta.

Si buscas Xamarin en este foro verás que hemos comentado el tema en otras ocasiones. Para juegos por ejemplo las opciones multiplataforma están muy bien porque al final te dedicas a pintar en pantalla todo y no suelen integrarse con la interfaz de usuario nativa. Para apps donde el grueso sea la lógica de la app también puede tener sentido no andar portando a distintos lenguajes, o si ya tienes una base de código C#.

Aprender a desarrollar C# y Xamarin para no usar Android Studio y Java/Kotlin no termino de verlo. Y para iOS te digo lo mismo. El nuevo lenguaje de Apple, Swift, y Kotlin son bastante parecidos en sintaxis y orientación (funcionales, con optionals, lambdas, etc.). Si aprendes un lenguaje el otro es pan comido. Lo que cambia entre plataformas son las APIs y ahí Xamarin poco puede hacer.
Responder Con Cita
Gracias de parte de:
  #3  
Viejo 18/06/17, 11:02:15
Avatar de kriogeN
kriogeN kriogeN no está en línea
Colaborador/a
Mensajes: 4,637
Compra y venta: (1)
 
Fecha de registro: oct 2010
Localización: Murcia
Mensajes: 4,637
Modelo de smartphone: Samsung Galaxy S7 Edge SM-G935F
Versión de ROM: CM13 - CM 11
Tu operador: Vodafone
Mencionado: 60 comentarios
Tagged: 3 hilos
Yo he trabajado con Xamarin, y como te dice mocelet, la única ventaja es que programas en un único lenguaje, de multiplataforma tiene poco.

Por ejemplo, en el caso de Android y de iOS, si programas en Xamarin lo único que te ahorras es la lógica no dependiente de la plataforma (el 1% del código final en la mayoría de los casos, y siendo generoso).

Por lo demás, tienes que crear Activity, UIViewController, Adapter, UITableViewDelegate, etc, con la desventaja que no tienes los instrumentos del sistema que te ayudan con la tarea, sobre todo en XCode, aunque llevo tiempo sin usar Xamarin y supongo que todo eso habrá mejorado.

Es decir, que el mondongo de la app lo tienes que seguir haciendo por duplicado.

"Quiero usar esta librería de Android/iOS que me mola mucho". Primero tendrás que buscar si existe en Xamarin o portarla.

"Google ha publicado la nueva versión del RecyclerView que añade esta función que necesito". Tendrás que esperar a que la publiquen en Xamarin.

"Ha salido iOS 15 y han cambiado las Push, necesito implementar el nuevo mecanismo para que funcione en iOS 15". Lo mismo, espera a que lo publiquen en Xamarin, aunque supongo que esto si irá bastante rápido.

En definitiva, que por no aprender Java/Swift te metes en un circo en el que encima de que ya dependes de Google y de Apple pasas a depender también de Microsoft.
Responder Con Cita
Gracias de parte de:
  #4  
Viejo 15/07/17, 05:55:37
Avatar de LEAJIM_454
LEAJIM_454 LEAJIM_454 no está en línea
Miembro del foro
Mensajes: 215
 
Fecha de registro: nov 2012
Mensajes: 215
Modelo de smartphone: Galaxy Ace
Versión de ROM: 2.3.6 Stock
Tu operador: Otra
Mencionado: 1 comentarios
Tagged: 0 hilos
Decidí segui entrenandome en Android y dejar a un lado Xamarin al menos de momento, gracias a ambos @kriogeN y @mocelet
Responder Con Cita
Respuesta

Estás aquí
Regresar   HTCMania > Todo sobre Android > Programación y Desarrollo para Android


Reglas de Mensajes
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Las caritas están On
Código [IMG] está On
Código HTML está Off

Saltar a Foro



Hora actual: 06:44:01 (GMT +2)

Cookies
Powered by vBulletin™
Copyright © vBulletin Solutions, Inc. All rights reserved.
 
HTCMania: líderes desde el 2007