Topo

Você deveria, mesmo, prestar mais atenção no Ionic

Wellington Mitrut

Esqueça os comentários negativos e dê uma chance ao Ionic

Vamos começar este texto sendo adultos e combinar duas coisas: a primeira é que não importa a tecnologia em que ele é feito, aplicativo bom é aplicativo bom e aplicativo ruim é aplicativo ruim, seja ele feito com Javascript, C#, Swift, Java, Cobol, React, Lisp ou seja lá o que for; e a segunda é: as pessoas estão pouco se importando para a tecnologia que você utilizou para fazer esse app, elas querem que ele funcione!

Isto posto, seguimos em frente.

Você deveria, mesmo, prestar mais atenção no Ionic. É sério! Se você é desenvolvedor de aplicativos mobile/web, com toda a certeza deve ter ouvido falar do Ionic 2 ou 3 nos últimos meses, senão sobre o Ionic, com certeza ouviu falar sobre o Angular 4, Typescript, Cordova ou então webpack.

Garanto que também deve ter ouvido de alguém o seguinte: “Ionic só trava, Ionic é lento, Ionic é ruim, feio e tem cara de melão.”

Pois bem, NÃO é nesse tipo de pensamento sobre o Ionic que você tem de prestar atenção.

Indo além dos limites

Já faz algum tempo que as aplicações web deixaram de ser uma simples manipulação de Javascript, CSS e HTML e se tornaram bem mais complexas, elaboradas. Estamos com o advento do PWA a todo vapor e existem pessoas que até consideram que os aplicativos nativos estão condenados ao limbo. Isso é verdade.

Bem, em partes. Digamos que as tecnologias web tornaram a coisa bem mais complicadas para os apps nativos, pois cresceram tanto em performance quanto em versatilidade.

Não necessariamente é o fim dos aplicativos nativos, mas digamos que temos uma nova e eficiente alternativa. Trataremos de PWA de forma detalhada em algum artigo futuramente.

O Ionic tem chamado muito a atenção com um princípio básico. É o velho paradigma: “Write Once, Run everywhere”. Com o Ionic, você consegue um aplicativo para todas as plataformas com a mesma base de código.

Você deve estar pensando: se o Ionic é tão bom, por que existe tanto preconceito com os aplicativos feitos com tecnologias híbridas e por que prestar atenção nele?

Falando sobre o elefante branco na sala ou “Por que você não é o Mark Zuckerberg”.

Eu admito, no começo, sim, as aplicações feitas com HTML, Cordova e afins perdiam feio em performance, design e usabilidade para aplicativos ditos nativos. Mas convenhamos, nossos smartphones também não eram essa Coca-Cola toda, né?

O Iphone 7, último até a data de publicação deste texto, tem 2GB de RAM e é considerado um dispositivo High-end, ou seja, top de linha, assim como o Galaxy S8, que tem absurdos 4GB de RAM! O meu primeiro PC tinha míseros 512Mb.

Tá, mas o que isto quer dizer? Isto quer dizer que, em questão de desempenho, aquele velho papo que “Smartphone não aguenta aplicações pesadas”, é balela.

Hoje, seu smartphone é uma ferramenta poderosa, e não é nenhum exagero falar que ele já é capaz de fazer até café (obrigado IoT), imagina abrir uma página web!

Mas, prosseguindo, uma coisa que pode ter gerado bastante preconceito foi uma declaração lá em 2012 que o Mark Zuckerberg fez sobre aplicativos web.

Bom, talvez para a estratégia do Facebook isso seja correto, embora tenhamos, hoje, um boom de aplicativos da própria empresa feitos com tecnologias web e até mesmo um framework disso. Talvez você não saiba, mas o seu querido Instagram é um app feito em HTML, CSS e Javascript.

Só que você tem de ter consciência que você não é o Markito e que talvez (estatisticamente falando) esse seu aplicativo não venha a ser o novo Facebook nem sofrer os mesmos problemas de escalabilidade. É necessário se fazer algumas perguntas:

Você tem milhões para investir no desenvolvimento deste app?

Você tem dois times de desenvolvedores experientes e prontos para fazer este aplicativo de forma nativa?

O seu dinheiro, sua vida e seus bilhões dependem do seu app para se comunicarem?

Se sim, faça nativo. Se não, considere alguns pontos bem legais sobre usar Ionic.

1- HTML, CSS e Javascript são fáceis de aprender

Nem que seja um pouquinho, nem que seja o mínimo, a maioria dos devs começou brincando com HTML e CSS e mesmo que você me diga “ah, eu não sei HTML”, não é difícil aprender um pouco. Além do mais, o Ionic oferece uma documentação mais do que completa.

2 - Novamente, você, possivelmente, não será o novo Facebook.

É uma verdade que tem de ser dita, as pessoas gostam de sonhar que vão ser o novo disruptivo, quebrador de paradigmas, magnânimo e proparoxítono empreendedor que criou o “Uber para Xyz”, mas é difícil que isso aconteça, e mesmo que aconteça, você tem de considerar algumas estatísticas dos aplicativos nativos atualmente:

60% das aplicações na Google Play Store nunca foram baixadas.

O usuário médio baixa menos de 3 aplicativos por mês. Metade dos usuários de smartphones baixa zero aplicativos por mês.

Os usuários de celular gastam a maior parte de seu tempo em aplicativos, mas 94% da receita de aplicativos vem de 1% dos editores, e os usuários gastam 80% de seu tempo usando apenas 5 aplicativos (aqueles 5 que você sabe quais são).

80% dos usuários que baixam um aplicativo não se tornam usuários ativos.

3 - Esteja preparado para ter seu PWA

Os Progressive Web Apps estão, aos poucos, se tornando mais parte do nosso dia a dia. Cada vez mais você recebe aquela solicitação de adicionar o ícone a sua tela inicial, isso diminui e bastante a fricção que um app nativo possui. Novamente, esses aplicativos estão bem performáticos, têm cara de aplicativo e não ocupam tanto espaço quanto os instalados em seu celular.

E sim, tem gente já trocando os aplicativos nativos pelo PWA.

E, imagine, você vai estar no celular do seu cliente sem ter de passar pela sabatina que algumas stores colocam. O Ionic já está preparado para os PWAs.

Mais sobre PWAs aqui:

4 -Tecnologias web amadureceram

Hoje é possível ter acesso aos mais diversos recursos, desde hardware como câmera, GPS, armazenamento até os mais diversos recursos que só os apps “nativos” tinham. Outra vantagem é o Ionic Native, que é um conjunto de wrappers para Ionic que usa as tais APIs nativas e dão ainda mais poder ao seu app.

5 - Velocidade alta, custo baixo

Um aplicativo nativo demanda, primariamente, duas coisas: uma equipe que saiba desenvolver na linguagem nativa e DINHEIRO para manter esta equipe.

Imagina que para cada plataforma você vai ter de gastar o mesmo tanto para fazer o mesmo aplicativo com os mesmos recursos em CADA uma.

Eu garanto que você ou o seu chefe querem estar em todas as lojas possíveis e no maior número de dispositivos possível.

Só que garanto que vocês também querem estar lá o quanto antes e com o menor custo. Pois bem, com o Ionic é possível se chegar lá em um tempo bem menor, com apenas uma equipe e com o custo consideravelmente reduzido.

6 - Comunidade

Seja no twitter, seja no Github, o Ionic me impressiona quando se trata de comunidade. Basta você acompanhar o Github do projeto e ver o tanto de stars, pull-requests, issues abertas e acompanhar o changelog do projeto. Isso é garantia de manutenibilidade, suporte e evolução da plataforma. E olha que eu nem vou falar de Angular 4 por hoje.

Tá, mas existe algum aplicativo grande feito em Ionic?

Já falei umas dez vezes aqui que você não é o Facebook e, possivelmente, com quase 100% de certeza, você não enfrente os mesmos problemas de escalabilidade, e mesmo que tenha e se torne um grande projeto absurdo com milhões de usuários, há grandes chances de que, se bem-feito, você permaneça utilizando o Ionic como ferramenta padrão para seus aplicativos, quer uma prova? Abaixo elenquei alguns aplicativos que usam Ionic, talvez você até conheça, use alguns e não saiba:

Untappd – Drink Socially

O que dizer desta rede social de cervejas artesanais que mal conheço e já considero pacas? O Untappd talvez seja o melhor caso. É uma rede social em que você compartilha notas, opiniões, fotos, adiciona amigos, encontra pubs, cervejarias e ainda pode pedir um carro para ir para casa depois de uma noite de degustação. Talvez o melhor exemplo, extremamente bem-feito e funcional.

Joule: Sous Vide by ChefSteps

O Joule é um assistente de cozinha para quem quer dar uma de master chef, extremamente bonito e fácil de usar.

Pacifica - Daily tools for managing stress, anxiety and depression.

O Pacifica é um aplicativo de meditação e voltado para ideia de mindfulness, uma espécie de assistente para suas meditações diárias.

Sworkit

Ainda na onda de assistentes, o Sworkit é perfeito para você que gosta de academias e de fazer tracking dos seus exercícios.

Enfim…

Espero, mesmo, que eu tenha feito ao menos você considerar brincar um pouco com o Ionic. Ele tem evoluído cada dia mais e se preparado para as novas tendências. Além de fácil de aprender, é moderno e segue as melhores práticas de desenvolvimento da atualidade.

Não menos importante, o Ionic também está se tornando relevante para aplicações desktop, com um grid muito bom, split pane e integrações com Elektron e afins.

Acompanhe sempre o blog oficial para as novidades, além das contas de twitter oficiais.

Tente, Ionic Vale a pena :D