Articles

Xamarin Software

Provavelmente a melhor estrutura multiplataforma

Para afirmar com antecedência: Tenho experiência com variantes nativas de Xamarin e .Forms, utilizando o Visual Studio como IDE de escolha. O desenvolvimento é simples e há muito material de aprendizagem disponível para permitir que até desenvolvedores de nível médio .Net se tornem produtivos em questão de dias. Do ponto de vista do proprietário de um produto, esta é a ferramenta de ponta a ponta quando se tem de visar múltiplas plataformas. Você tem a vantagem de ser capaz de atingir dispositivos & características específicas da plataforma sem as dores de ter que usar recipientes web como Cordova ou frameworks Ionic) Para o desenvolvedor padrão, a maior dor é a experiência de depuração. Isso geralmente é lento (por exemplo, falta a funcionalidade “Fast deployment” do Android nativo) e devido às otimizações do compilador, a Intelisense mal funcionará (você não obtém listagens das propriedades disponíveis & métodos, enquanto alguns valores de propriedades não serão acessíveis de forma alguma) – embora isso possa ser mitigado com o uso de uma boa ferramenta de registro. Para adicionar mais, o (relativamente) novo Xamarin Forms irá restringir ainda mais o desenvolvedor a usar uma implementação unificada, tornando o produto geral ainda mais manejável (embora isso possa ter limitações na conversão de aplicativos nativos existentes). Em suma, este é um produto amadurecido que deve ser sempre considerado quando se trata de software multiplataforma.

Pros

– Antes de mais nada, é a portabilidade que está impulsionando o mercado. Ser capaz de escrever uma única implementação que visa múltiplas plataformas é extremamente rentável – Sendo suportado por .Net (extremamente comum entre a comunidade de desenvolvimento de software) é muito mais fácil manter uma solução Xamarin (ao invés de ter que encontrar desenvolvedores de plataformas nativas) – O suporte a hardware é realmente muito alto – até mesmo os produtores de hardware (por exemplo: Motorola) estão lançando SDKs Xamarin.

Cons

– Talvez a única verdadeira desvantagem seja que há sempre um atraso antes de ser atualizado para suportar a última atualização da plataforma – A depuração pode tornar-se tediosa e eu vi isso especialmente nas implementações nativas devido à forma menos otimizada do Xamarin de relatar um problema (ou seja: você pode acabar em situações em que uma mensagem de erro relacionada a um tempo de execução do Android foi realmente causada por algum pequeno problema de layout onde um elemento necessário não está presente)