Capítulo 1
Onde o Xamarin.Forms se encaixam??
Há muita alegria na programação. Há alegria em analisar um problema, dividindo-o em pedaços, formular uma solução, mapear uma estratégia, aproximá-la de diferentes direções e elaborar o código. Há muita alegria em ver o programa executado pela primeira vez e, em seguida, mais alegria em mergulhando ansiosamente no código para torná-lo melhor e mais rápido.
Também há muitas vezes alegria na busca de erros, garantindo que o programa funcione sem problemas e previsivelmente.
Algumas ocasiões são tão alegres quanto finalmente identificando um bug particularmente recalcitrante e definitivamente
eliminando-o.
Existe mesmo alegria em perceber que a abordagem original que você tomou não é a melhor. Muitos desenvolvedores
descubra que aprenderam muito enquanto escrevia um programa, incluindo que existe uma maneira melhor de
estrutura o código. Às vezes, uma reescrita parcial ou mesmo total pode resultar em uma aplicação muito melhor,
ou simplesmente um que é estruturalmente mais coerente e mais fácil de manter. O processo é como ficar em
os próprios ombros, e há muita alegria em alcançar essa perspectiva e conhecimento.
No entanto, nem todos os aspectos da programação são tão alegres. Um dos trabalhos de programação mais nojosa
está tomando um programa de trabalho e reescrevendo-o em uma linguagem de programação ou portabilidade completamente diferente
para outro sistema operacional com uma interface de programação de aplicativos (API) totalmente diferente.
Um trabalho como esse pode ser uma moagem real. No entanto, tal reescrita pode muito bem ser necessária: uma aplicação
Isso foi tão popular no iPhone pode ser ainda mais popular em dispositivos Android, e existe
Só há uma maneira de descobrir.
Mas aqui está o problema: enquanto você está passando pelo código-fonte original e movendo-o para o novo
plataforma, você mantém a mesma estrutura de programa para que as duas versões existam em paralelo? Ou faça
você tenta fazer melhorias e aprimoramentos?
A tentação, é claro, é repensar completamente a aplicação e melhorar a nova versão.
Mas quanto mais as duas versões se afastam, mais difícil elas serão para manter no futuro.
Por esta razão, uma sensação de medo permeia a bifurcação de uma aplicação em dois. Com cada linha de
código que você escreve, você percebe que todo o trabalho de manutenção futura, todas as futuras revisões e aprimoramentos,
tornaram-se dois empregos em vez de um.
Este não é um problema novo. Durante mais de meio século, os desenvolvedores desejam a capacidade de escrever um único
programa que funciona em várias máquinas. Esta é uma das razões pelas quais as línguas de alto nível eram
inventado em primeiro lugar, e é por isso que o conceito de "desenvolvimento multiplataforma" continua a
exercer um fascínio tão poderoso para os programadores.