Press enter to see results or esc to cancel.

Xamarin – Vamos utilizar?

Sempre tive um problema de aceitar as políticas que envolvem tecnologias da Microsoft, mas de alguns anos para cá, eu vejo que a empresa está abrindo mais a mente, talvez por conta da mudança gerencial e cultural.

Em um passado não muito distante, eu já havia trabalhado com .NET, mas acabei indo para o mundo Java e depois passei cinco anos trabalhando com SAP ABAP, aprendi muita coisa com essa tecnologia e a mesma me ajudou a perceber que não adianta ficar somente em nosso mundinho, mesmo sempre tentando está por dentro das novidades do mercado. Então, hoje já com 30 anos tive a oportunidade de voltar a trabalhar com tecnologias Web utilizando .NET.

Na atual empresa que eu trabalho existe um ambiente de desenvolvimento com três plataformas diferentes, .NET, Delphi e SAP ABAP.
Em 2014 tivemos uma demanda para o desenvolvimento de um aplicativo mobile, e como sempre a equipe nunca tem tempo, uma empresa foi contratada para fazer o serviço e a mesma já havia um produto pronto que atendia a nossa demanda e assim foi feito, compramos o aplicativo. Ele foi desenvolvido com Sencha Touch 2, para aquele momento atendeu todas as nossas necessidades, até! Começar o pesadelo das versões Android e iOS, como temos um ambiente com muitos usuários e nem todos utilizam a mesma versão do sistema operacional e muito menos o mesmo device, começaram os problemas de compatibilidade.

Chegamos a um ponto que infelizmente não dava mais, estávamos precisando de uma solução urgente.

Acabei tomando a frente de procurar uma melhor opção de desenvolvimento. Estudei sobre desenvolvimento mobile Android, iOS e Windows Phone e fiquei pensando; “imagina ter que aprender cada uma dessas tecnologias e tendo que envolver a equipe ?”. Pesquisei sobre o Ionic, mas fiquei com medo de cair no mesmo problema do Sencha. E não saia da minha cabeça a vontade de desenvolver na forma nativa, mas isso seria um problemão certo ? Teríamos que ter um desenvolvedor que soubesse todas as plataformas mobile ou um para cada, imagina o tempo para isso ? E olhando para o nosso cenário onde tinha uma quantidade boa de pessoas que desenvolvia com C# e conversando com amigos da área, surgiu a palavra Xamarin. Foi então que eu fiz uma pesquisa sobre essa plataforma de desenvolvimento, acabei sugerindo essa opção para os meus gestores, mostrando as vantagens e desvantagens(sim) sobre o Xamarin.

Na época o Xamarin não era da Microsoft, e não sabemos muito sobre essa nova aquisição, mesmo com o pé atrás com a Microsoft, eu espero muito que a empresa só melhore a plataforma.

O Xamarin é uma forma de buscar o melhor caminho para construir aplicativos nativos utilizando o C#. Como assim ? Exatamente isso que vocês acabaram de ler, com o Xamarin + C# é possível gerar códigos nativos para a plataforma iOS e Android. Esta técnica somente foi possível depois de muito trabalho da equipe da Xamarin, envolvendo o já conhecido projeto Mono (http://mono-project.com).

Utilizando o Xamarin Studio e o Visual Studio é possível desenvolver qualquer tipo de aplicativo mobile com Xamarin, escrevemos o código utilizando o C# + bibliotecas de cada plataforma que desejamos utilizar.

 

code-sharing

Como podemos ver a aplicação é escrita em C# e acima estão todas as plataformas tem suas bibliotecas disponibilizadas para que sejam utilizadas, assim quando o código é compilado toda a mágica acontece com a geração de códigos nativos, imaginamos aqui um “Write once, run anywhere”, como mostrado abaixo.

Xamarin-all

 

A grande vantagem é diminuir o esforço para aprender Java(Android), Swift/Objective-C (iOS) e Windows Phone para desenvolver sua aplicação, sendo que com o aprendizado de uma tecnologia é possível desenvolver para as três plataformas, e caso já tenha uma equipe que desenvolve aplicações utilizando o C# a coisa se torna muito mais fácil.

No próximo vamos ver como esta mágica acontece na prática, obrigado a todos.

– www.xamarin.com
– www.mono-project.com
– www.monobrasil.com.br

Share on FacebookTweet about this on TwitterShare on Google+Share on LinkedInEmail this to someone
Comments

Leave a Comment