Índice
Nem tudo são flores com desenvolvimento de software, especialmente quando falamos de mobile. E em iOS não é diferente, viu? Apesar da lenda de que este sistema é totalmente superior e perfeito, depois de um tempo trabalhando na área, é fácil identificar os traços negativos de se trabalhar com essa stack.
Mas adivinha? É muito raro encontrar devs falando sobre o lado ruim de IOS e, nas buscas que fiz, não encontrei quase nenhum conteúdo de qualidade. Entretanto, felizmente esbarrei neste vídeo da @hellomayuko, que é em inglês. Caso não a conheça, a Mayuko é Engenheira iOS e tem mais 4 anos de experiência na área. E, a partir deste conteúdo, resolvi compartilhar também um pouco mais sobre o assunto, trazendo 5 pontos negativos do desenvolvimento IOS.
Nem todo mundo precisa de um App
Antes de mais nada, é importante falar disso. Afinal, hoje em dia, parece que existe aplicativo para tudo, não é? Independentemente do ramo, área, objetivo da empresa, parece que todo mundo está seguindo por este caminho. E, sim, apps podem trazer vários benefícios e facilidades, mas é importante ter em mente que nem todas as empresas precisam de um aplicativo. Apesar do cansaço digital que existe, muitas vezes um site é a melhor solução para criar a sua plataforma e engajar diretamente com o seu público. Aliás, existe um exemplo muito interessante disso: o Conecte SUS, que é um aplicativo híbrido, não precisa de um App, mas sim de um site com o princípio de Mobile First. E esse padrão pode ser encontrado em vários outros projetos muito parecidos.
1. Desenvolver para iOS é caro
Os produtos da Apple são extremamente caros, principalmente no Brasil. E para desenvolver apps para os dispositivos da empresa, é necessário ter um computador da mesma e infelizmente não é possível criar essas soluções através do Linux ou Windows. Ou seja, a falta de fácil acesso cria uma barreira limitante para devs que não possuem uma condição financeira à altura dos produtos de preços exorbitantes da Apple. Inclusive, esse alto preço influencia também na quantidade de pessoas que desenvolvem iOS, ou seja, a tendência é que haja menos devs com este nicho dentro do Brasil.
2. Xcode é maçante
A IDE oficial e a mais recomendável de se usar é o Xcode e ele pode ser muito maçante. Aliás, por ser assim, existem diversos memes e piadas na internet sobre e, depois de ter uma experiência direta com isso, é fácil de ver o porquê. Além de possuir muitos bugs, é muito comum não conseguir encontrar a solução na internet e, para piorar ainda mais, existem mensagens de erros difíceis de entender. Ou seja, a própria natureza do trabalho com essa IDE é muito mais complexa do que deveria ser.
3. Nicho fechado
Nem tudo que você aprende dessa tecnologia é possível passar para outras. Na verdade, a Apple parece seguir isso com todas as suas vertentes, seja com a programação ou na exclusão que a empresa faz de seus produtos, carregadores e compatibilidade. Então, dentro do âmbito de desenvolvimento de software, muitas coisas não são passadas para outras stacks, como front-end, back-end e dados, por exemplo.
4. Fazer deploy é delicado
Em front-end, é possível fazer deploy várias vezes em um dia, mas com iOS não é bem assim. Apesar do motivo ser bom (o foco é a segurança e qualidade de todos os usuários), o processo de revisão é bem rígido. Por exemplo, toda vez que você manda uma atualização do seu app para a AppStore, ele é revisado completamente, tornando o processo demorado e lento. Ou seja, funciona basicamente assim: você envia um código binário para a Apple, eles fazem todo o processo de revisão que pode levar um ou dois dias, e eles decidem se será aceito ou não.
Se for aceito ele é publicado. Caso contrário, você terá que fazer novas tentativas para corrigir o problema que foi identificado no processo de revisão e seguir as diretrizes de publicação na AppStore. E o problema é justamente este: às vezes nem é uma questão do código, mas apenas porque a escrita não segue o padrão da Apple.
5. A Apple não é perfeita
Quem é fã da Apple costuma defender todas as visões da empresa, mesmo quando ela inventa de vender carregadores separadamente. E isso também acontece com algumas pessoas que desenvolvem para iOS, que veem a empresa como se ela fosse perfeita. Mas sabemos que ela é uma empresa como qualquer outra, com interesses financeiros particulares, qualidades e defeitos.
Tudo isso não quer dizer que o desenvolvimento em iOS não possui grandes qualidades. Mas é um bom lembrete de que nenhuma tecnologia é um mar de rosas. E já que falamos de aplicativos nesse texto, vale muito a pena ler este artigo sobre as vantagens de desenvolver em mobile com React Native e Typescript.
Sobre a autora
Leledeveloper é uma Engenheira de Software iOS que sofre com Xcode todo dia e adora falar de tecnologia, saúde e alimentação. Formada na Apple Developer Academy PUC-Rio, é cria do Complexo do Alemão. Se quiser conhecer mais conteúdos dela, acesse aqui.