Dev (Back & Front)ARTIGO

10 bibliotecas que todo desenvolvedor iOS deve substituir ainda em 2024

10 bibliotecas que todo desenvolvedor iOS deve substituir ainda em 2024Transforme seus apps adotando SwiftUI e práticas modernas de desenvolvimento hoje…

10 bibliotecas que todo desenvolvedor iOS deve substituir ainda em 2024
Imagem: Herlandro Hermogenes

10 bibliotecas que todo desenvolvedor iOS deve substituir ainda em 2024
Transforme seus apps adotando SwiftUI e práticas modernas de desenvolvimento hoje mesmo

Desenvolvedor iOS

A tecnologia está em constante evolução, e nós, desenvolvedores, também devemos acompanhar. Vou compartilhar a jornada de como substituir essas 10 bibliotecas legadas por soluções inovadoras que não somente revitalizaram, mas melhoram e aceleraram o meu processo de desenvolvimento de aplicativos iOS.

1. Alamofire > URLSession com async/await

Era uma vez Alamofire…

Alamofire sempre foi minha escolha para lidar com requisições HTTP, simplificando o processo de rede. No entanto, com a introdução do async/await no Swift e a capacidade poderosa do URLSession, eu consegui os mesmos resultados com um código mais limpo e eficiente. Além disso, essa mudança reduziu as dependências e deixou minha camada de rede mais integrada e nativa ao iOS.

2. RxSwift (UIKit) > Combine

Do RxSwift para Combine: Simplificando o Código

RxSwift me abriu os olhos para o mundo da programação reativa. Mas, ao integrar com SwiftUI, percebi que parecia forçado. Ao migrar para o Combine, o framework reativo nativo da Apple, minha base de código ficou mais coesa e muito mais simples de manter. A integração com o SwiftUI foi perfeita, tornando a transição uma escolha natural.

3. Realm > Core Data com SwiftUI

Substituindo Realm por Core Data com SwiftUI

Sempre gostei do Realm pela simplicidade e desempenho. Porém, com o SwiftUI e sua integração melhorada com o Core Data, o cenário mudou. Funcionalidades como @FetchRequest e suporte aprimorado ao managedObjectContext tornaram o Core Data mais acessível. A mudança unificou o gerenciamento de dados e trouxe mais estabilidade para os meus aplicativos.

4. SDWebImage > AsyncImage ou Nuke

De SDWebImage para AsyncImage e Nuke

Carregar imagens assincronamente era um desafio resolvido pelo SDWebImage, mas o SwiftUI trouxe o componente nativo AsyncImage, que se encaixa perfeitamente nas minhas necessidades. Para casos mais complexos, o Nuke tem sido uma excelente opção, oferecendo suporte ao SwiftUI e recursos avançados de processamento de imagens.

5. Kingfisher > Kingfisher para SwiftUI

Atualizando o Kingfisher para o SwiftUI

O Kingfisher sempre foi uma excelente biblioteca para download e cache de imagens, e a boa notícia é que ela evoluiu. Suas versões mais recentes suportam totalmente o SwiftUI, tornando a integração ainda mais fluida. Continuar com o Kingfisher é como trabalhar com um velho amigo, só que agora mais moderno e eficiente.

6. Lottie > Lottie para SwiftUI

Tornando Animações Mais Simples com Lottie no SwiftUI

As animações são essenciais para melhorar a experiência do usuário, e o Lottie foi fundamental para dar vida aos meus projetos. Agora que o Lottie oferece suporte ao SwiftUI, a incorporação dessas animações ficou ainda mais fácil, reacendendo minha paixão por criar experiências visuais envolventes.

7. SwiftyJSON > Codable

Substituindo o SwiftyJSON pelo Codable

O SwiftyJSON era minha escolha para fazer o parsing de dados JSON. Ele simplificou bastante o processo. No entanto, com o protocolo Codable nativo do Swift, encontrei uma maneira mais eficiente e segura de lidar com JSON. O resultado? Código mais limpo e confiável.

8. Charts > Framework Nativo de Charts da Apple

Utilizando o Framework Nativo de Charts da Apple

Criar gráficos visualmente atraentes costumava exigir bibliotecas pesadas de terceiros. Com a introdução do framework nativo de Charts da Apple, a criação de visualizações de dados tornou-se uma parte integrada e prazerosa do desenvolvimento, sem a necessidade de dependências externas.

9. SnapKit > Sistema de Layout do SwiftUI

Transição do SnapKit para o Sistema de Layout do SwiftUI

SnapKit facilitava o Auto Layout, mas o sistema declarativo de layout do SwiftUI revolucionou minha forma de desenvolver interfaces. Usando stacks e guias de alinhamento, agora crio layouts complexos com menos código e mais flexibilidade, tornando o desenvolvimento de UI um prazer novamente.

10. MBProgressHUD > ProgressView

Modernizando com ProgressView no Lugar do MBProgressHUD

O MBProgressHUD era a escolha padrão para exibir o progresso e estados de carregamento. Porém, o ProgressView do SwiftUI trouxe uma alternativa nativa e personalizável, que se encaixa naturalmente nos meus apps, tornando o código mais simples e proporcionando uma experiência do usuário mais fluida.


Desenvolvedor iOS: o que esperar para o futuro

Essas mudanças não apenas atualizaram meus projetos, mas também reacenderam minha paixão por desenvolvimento mobile. Aqui está o que vejo no horizonte:

  • SwiftUI se Tornando o Padrão: Até o final de 2025, acredito que o SwiftUI será a base da maioria dos novos projetos de iOS.
  • Menos Dependência de Bibliotecas Externas: À medida que as soluções nativas continuam a evoluir, a necessidade de bibliotecas de terceiros vai diminuir, resultando em bases de código mais estáveis e fáceis de manter.
  • Adoção do Combine: O Combine deve se consolidar como padrão para programação reativa no Swift, trazendo integração perfeita e benefícios de desempenho.

E você, já começou a migrar suas antigas bibliotecas? Compartilhe suas experiências, desafios ou dicas!

Este artigo original está em https://bit.ly/3XS9n9f

Herlandro HermogenesAutor

Nascido no coração cultural de Minas Gerais, comecei minha carreira como Designer Gráfico, onde percebi o poder da união entre criatividade e tecnologia. Dois anos de voluntariado no Amazonas me mostraram como a tecnologia pode transformar vidas. Em São Paulo, trabalhei em empresas como Capgemini e Rede Globo e fundei uma startup de marketing de proximidade, sempre em busca de soluções inovadoras. Atualmente em Portugal, atuo na Randstad France, liderando projetos de inovação e transformação digital. Sou um colaborador ativo no StackOverflow e GitHub, mentor de novos talentos pela APDList e escrevo sobre tecnologia para um público global. Minha trajetória é guiada pela fé, família, natureza e crossfit, sempre acreditando que a tecnologia, usada com propósito, pode transformar realidades.

Ver perfil