Notas: Xamarin {JIT & AOT}


Recordemos que Xamarin ofrece dos productos comerciales: Xamarin.iOS y Xamarin.Android, los cuales están construidos en la parte superior de Mono, una versión de código abierto de .NET Framework basado en los estándares ECMA .NET publicados. Mono ha existido casi tanto tiempo como el marco .NET en sí, y funciona en casi todas las plataformas imaginables incluyendo Linux, Unix, FreeBSD y Mac OS X.

Formas de compilar en Xamarin:

iOS compila directamente a código ensamblador ARM nativo, utilizando Ahead Of Time (AOT). En Android, el compilador de Xamarin pasa a lenguaje intermedio (IL), que luego pasa a ser compilado en “Just-In-Time (JIT)” para el montaje nativo cuando se inicia la aplicación.

Xamarin JIT AOT

JIT
Just In Time compilation (Compilación en tiempo de ejecución)

Esta opción es una especie de híbrido entre un compilado e interpretado. Y es cómo trabajan la mayoría de entornos de ejecución de Java.

La idea detrás de esto es simple. En lugar de compilar todo de antemano, se compila sólo lo que es necesario para la tarea en cuestión.

AOT
Ahead Of Time Compilation (Por delante de la compilación de tiempo)

AOT, significa que en lugar de esperar hasta que el código sea ejecutado, toma el código inicial (por lo general el código de bytes) y lo compila para el dispositivo que se está ejecutando. Al actualizar su dispositivo Android en estos días, se le dirá que es la optimización de las aplicaciones – un proceso que puede tardar varios minutos. En esencia, este es el tiempo por delante de compilación introducido recientemente a Android (conocido como ART).

En ambos casos, las aplicaciones Xamarin utilizan un tiempo de ejecución que se encarga de automatizar tareas, tales como la asignación de memoria, recolección de basura, etc.

[Meetup] ¿Nativo o Cross Platform?, he ahí el dilema…


cross-platform_270x270

Introducción

El cross-platform es un método para desarrollar aplicaciones para nuestros teléfonos móviles con un coste menor de desarrollo. Este se centra en un único desarrollo que exporta a las diferentes plataformas disponibles en el mercado. Gracias a esta práctica, se puede conseguir la presencia de nuestras aplicaciones en todos los sistemas operativos, con un coste mucho menor que si fueran desarrolladas en el lenguaje nativo ya que esto supondría un desarrollo para cada plataforma.

Para el desarrollo de estas aplicaciones hay que tener en cuenta qué plugins y conectores vamos a necesitar y comprobar si están disponibles para todas las plataformas en las que deseamos que nuestra app tenga presencia.

El evento

En esta segunda edición de la comunidad de #XamarinStudentsMexico contaremos con la participacion de dos expertos que han desarrollado Apps de forma Nativa y ahora usando Xamarin, dandonos a conocer su perspectiva sobre que es mejor y por que o cuando usar cada uno, ademas de temas muy interesantes.

Agenda

Bienvenida

Ponente: Juan Carlos Ricalde “Jucaripo” | Desarrollador Sr. | Experiencia de 3 años en #Xamarin | Desarrollador Web

  • Desarrollo de  librerías PCL  en Xamarin.

Ponente: Luis Beltran | #XSP, #MSP & C# Developer. Currently learning #Xamarin and doing a PhD in #EngineeringInformatics

  • Detectando Emociones con Microsoft Cognitive Services y Xamarin

El lugar

NearSoft  – San Luis Potosí 196, Oficina 401, Roma Norte

Hora

Los esperamos a partir de las 19:30, dando comienzo en punto de las 19:45, puesto que finalizaremos con sorpresas.

Más información

Cualquier duda a comentario favor de hacerlo saber la pagina del evento (Meetup).

Notas: Xamarin.iOS / Xamarin.Android


Cuando estaba en la Universidad recordaba que muchos de mis compañeros haciendo resúmenes de todas las diapositivas que los maestros nos brindaban para estudiar, puesto que los exámenes son esto, y bueno, a continuación les quiero proporcionar algunos “Tips” o  notas esenciales que podrían ayudar a estudiar si están a punto de tomar el examen de certificación de Xamarin.

La propiedad Frame (Marco) de UIView en iOS nos permite manipular/mover una vista a una nueva ubicación dentro de su matriz (parent).

“Con UIView se pueden establecer la posición de 2 maneras:  center – frame.origin”

Cuando se usa Shared Projects (proyectos compartidos), NO se deben de proporcionar las interfaces o abstracciones (abstractions ) para cada característica específica de cada plataforma utilizada.

Configurando la propiedad MainLauncher a verdadero (true) en en atributo [ Activity ] se puede especificar tu actividad inicial.

Recordemos que las aplicaciones iOS pueden tener mas de una UIWindow asociada a ellas y que muchas de las propiedades específicas de la aplicación iOS están guardadas en el archivo Info.plist.

Un Bundle en Android es un diccionario para almacenar y pasar información seriada entre actividades.

Para usar el método estático de iOS NSFileManager.SetSkipBackupAttribute en la Librería de Clase Portable (Portable Class Library), se necesita crear una abstracción (abstraction ) e implementarla en el proyecto Xamarin.iOS para dar acceso a esta API.

La forma en que trabajan las aplicaciones de Xamarin.Android a la hora de ejecución es gracias a Mono Runtime, puesto que esta se coloca justo encima del núcleo de Linux, lo cual crea un contexto de ejecución en paralelo al tiempo de ejecución de Android.

Para ocultar la barra de navegación en Xamarin solo se debe agregar la siguiente línea de código en el constructor de las páginas.

 NavigationPage.SetHasNavigationBar(this, false);

Xamarin Test Cloud te permite ejecutar tu aplicación en miles de modelos diferentes y versiones de SO diferidas.

Memoria: .NET/Mono usa Garbage Collector (GC), quien periódicamente detiene el programa y libera la memoria de la App que ya no se utilice. Esto sucede de forma automática tanto como se necesite.

Espero y les ayuden, de ser así, les agradecería sus comentarios.

DisplayAlert(“Hasta luego!!”,”Ok”);

Requerimientos: Certificación Xamarin 2016


Trofy Xamarin

Hace algunos días hubo algunos cambios en Xamarin University, en donde disminuyeron los cursos que se deben de tomar para poder presentar el examen de certificación, pasaron de 18 a 15.

Los que dejaron de formar parte fueron:

IOS210 – Backgrounding in iOS
AND210 – Backgrounding in Android
XAM370 – Memory and Performance

Pero se sigue respetando el número de preguntas, las cuales son 150.

Cabe mencionar que de estos temas no se formularan preguntas en el examen.

Cambios…

XAM370 fue reescrito por completo con un contenido más profundo, que se centra exclusivamente en los problemas de gestión de memoria en iOS y Android. Fue publicado este fin de semana y será parte de los requisitos de re-certificación del segundo año.

iOS210 y AND210 siempre han sido cursos de background  y parte del examen de re-certificación. En otras palabras, estos aparecerán cuando las personas vayan por su segunda certificación.

Más información: Forum.Xamarin

Si tienen alguna duda, siéntanse libres de comentar aquí.

Convocatoria: Xamarin.Students.Partners ();


El ser estudiante hoy en día conlleva muchas responsabilidades, pero a la vez demasiados beneficios y más con las empresas, en específico las del mundo de las tecnologías.

Xamarin cuenta con un programa para estudiantes denominado “Xamarin Students Partners (XSP antes XSA), quienes se encargan de difundir el desarrollo móvil en las Universidades de todo el mundo,  ya sea brindando conferencias, talleres o creando comunidades.

El formar parte de este equipo conlleva muchos beneficios y creanme, la oportunidad de convivir con otros estudiantes a nivel mundial cambia la perspectiva de cómo la educación en otros países es muy variable.

¿Cómo puedo convertirme en un Xamarin Student Partner?

Es fácil, ¿cumples con estas características?

 Desarrollo aplicaciones móviles en mi tiempo libre para divertirme.
Me gusta enseñar a otros las cosas nuevas.
Me mantengo al día con las últimas tecnologías.
Disfruto dando charlas técnicas y presentaciones.

¿Cómo puedo aplicar?

Lo que el equipo de Xamarin busca es:
• Excelente habilidad de comunicación verbal y escrita
Pasión por la creación de aplicaciones móviles en C #
• Tener tu código en GitHub
Contar con experiencia en desarrollo de aplicaciones para iOS, Android o Windows es un bono.

Si cumples con todo esto, entonces debes aplicar, manda un correo a luciomsp@geeks.ms en donde asunto = “Lucio, quiero ser un XSP! “ y con gusto te puedo guiar, recuerda que debes de estar estudiando una carrera que vaya de la mano con las TI y de preferencia ser de los primeros semestres.

Xamarin permite a los estudiantes de las Universidades de todo el mundo crear aplicaciones nativas para iOS,Android y Windows a través del programa.

En Julio se darán los resultados, así que llena tu solicitud.

Mas información> Xamarin/students

Si tienes alguna duda del programa escríbeme por twitter: @LucioMSP