Top framework de apps, cross vs nativo, como escolher?
Frameworks nativas como android studio e xcode da apple fornecem ui / ux nativo, a velocidade de desenvolvimento é lenta, custo de manutenção alto, desempenho muito alto, linguagens de programação objective C e Swift na apple, Java e kotlin no android, estas frameworks são muito maduras e têm relativamente poucos bugs, a experiência do usuário nativo de UI parece com plataforma nativa, o problema é a velocidade / custo de desenvolvimento, pois temos que criar a app duas vezes, uma para android e outra para iOS, o que aumenta o custo do produto e manutenção.
Se você deseja utilizar novos recursos esta é a melhor solução, sempre que novas features são lançadas, o nativo é o primeiro a ter suporte e normalmente com menos bugs.
Cross frameworks como react native, flutter, ionic e xamarin permitem que os desenvolvedores criem apps móveis que são compatíveis com mais de um sistema operacional, iOS e Android. Com essa tecnologia, você pode escrever código uma vez e usá-lo em ambos os sistemas, de forma que o custo e o tempo sejam menores. Porém, se você quiser usar novos recursos fornecidos no sistema nativo, nas cross frameworks eles aparecem com algum atraso e provavelmente com bugs ou pequena quantidade de documentação, outro problema de cross frameworks são problemas de desempenho inferior e compatibilidade de hardware.
Vamos falar sobre as cross frameworks mais usados:

O React Native é um framework criado pelo facebook, lançamento oficial de 2015, é um código aberto e gratuito, a linguagem de programação é javascript. Compartilhe o código 90% aproximadamente.
Os componentes parecem nativos, porque o react usa componentes realmente nativos, quando novos componentes são atualizados no nativo, eles estarão automaticamente disponíveis no react.
O react nativo também pode ser usado em aplicativos móveis, desktop e web extraindo o código para outro projeto usando a dependência de injeção.
Principais aplicativos com react nativo: Instagram, Facebook, Facebook Ads, Skype, Tesla
Vantagens:
- Construção mais rápida
- Recarregando quente
- Apps rápidos
- UI simplificada
- Suporte a plug-ins de terceiros
- Comunidade maior
- Arquitetura modular
- Interface de usuário simples
Desvantagens:
- falta de alguns módulos personalizados
- Desenvolver funções nativos ainda são necessárias
- falta de robustez de segurança
- Demora mais para inicializar
- Gerenciar a memória

Flutter é um framework criado pelo google, o lançamento oficial 2018, é gratuito e de código aberto, a linguagem de programação é dardo.
Principais aplicativos: aplicativo Xianyu da Alibaba, aplicativo Hamilton para Hamilton Musical, aplicativo Google Ads
Vantagens:
- Hot Reload
- Até 50% menos testes
- Desenvolvimento de apps mais rápido
- Projetos fáceis de usar
- Perfeito para MVPs
- Menos código
Desvantagens:
- Tamanho da comunidade de desenvolvedores
- Bibliotecas e suporte são bons, mas não tão produtivos quanto o desenvolvimento nativo
- Suporte de integração contínua
- Tamanho do aplicativo
- Flutter não suporta 3D
- Uso de hardware do telemovel, como tirar fotos, tocar música …
- Não oferece suporte a bibliotecas de terceiros
- Flutter não é compatível com Android TV e Apple TV.
- Aprendendo uma nova língua dart
- Imagem para postagem

Ionic é um framework criado pelo Drifty, o lançamento oficial 2013, é gratuito e de código aberto, a linguagem de programação é HTML, Javascript e CSS.
Vantagens:
- Permite a prototipagem rápida
- Usado para aplicativos gráficos ou desenvolvimento de jogos devido a plug-ins de wrapper.
- Curva de aprendizagem fácil
- Desenvolvimento rápido e tempo de colocação no mercado
- Pode ser desenvolvido principalmente no navegador
- Angular, HTML, CSS e JavaScript
- Muitos componentes de IU disponíveis e fáceis de usar
- Muitos plug-ins, como câmeras, leitores de impressão digital, NFC, geolocalização, Firebase, notificações push e links diretos.
Desvantagens:
- Não é adequado para aplicativos de alto desempenho ou com uso intenso de IU
- Não se destina ao desenvolvimento de jogos
- Estabilidade de plug-ins nativos
- A depuração requer mais tempo por causa de mensagens de erro pouco claras (javascript)
- Falha de compilações, aleatoriamente

Xamarin Share code 96% aproximadamente
Xamarin é um framework adquirido pela Microsoft, o lançamento oficial de 2011, é um código aberto e gratuito, a linguagem de programação é C sharp.
Vantagens:
- Desempenho próximo ao nativo
suporte completo de hardware - Compartilhamento de código
suporte contínuo garantido ao desenvolvedor - c #
- tempo para o mercado
- prototipagem rápida com Xamarin.Forms
Desvantagens:
- suporte acesso a bibliotecas de código aberto
- alto custo para uso profissional
- comunidade é significativamente menor
- conhecimento básico necessário de línguas nativas
- gráficos pesados
- tamanho maior do aplicativo
- ainda leva tempo para a API do Xamarin ser atualizada, quando, quando atualizar, é necessário revisar o código sempre
- problemas de estabilidade
Espero que gostem do artigo, mais está chegando …