Recentemente, a Apple anunciou uma novidade no seu evento WWDC25 que promete facilitar a vida dos desenvolvedores que trabalham com Swift: a Concurrency Acessível, introduzida na versão 6.2 da linguagem. Para muitos programadores, a implementação de código concorrente sempre foi um bicho de sete cabeças... afinal, quem nunca se deparou com um monte de erros estranhos no compilador, não é mesmo?

Introdução

O que a Apple fez foi tentar diminuir essa complexidade, trazendo um novo conjunto de funcionalidades que tornam a programação concorrente mais intuitiva e menos propensa a erros. Isso é especialmente válido para aplicações móveis, que geralmete têm uma estrutura mais cimples em comparação com software de uso geral.

O que é a Concurrency Acessível?

A Concurrency Acessível é uma abordagem que visa simplificar a programação concorrente, focando nas situações mais comuns encontradas no desenvolvimento de aplicativos. Com isso, o compilador fica mais previsível e menos propenso a gerar alertas desnecessários que, muitas vezes, confundem mais do que ajudam.

Novidades do Swift 6.2

Entre as principais inovações, estão duas bandeiras de compilador muito importantes: inferir conformidades isoladas e a imposição padrão de não isolado. A primeira, por exemplo,, introduz a noção de conformidade isolada, permitindo que a conformidade a um tipo restrinja-se ao mesmo domínio de isolamento do tipo que o implementa. Isso significa que, se você tiver um tipo como MyModelType que conforma a Equatable, o compilador vai exigir que essa conformidade esteja ligada ao mesmo domínio de isolamento.

Por outro lado, a imposição de não isolado garante que uma função assíncrona não isolada execute no executor do ator chamador, ao invés de rodar em um executor global. Isso é uma mudança significativa que unifica o comportamento de funções não assíncronas não isoladas.

Dicas Avançadas

Para quem já está familiarizado com a programação em Swift, aqui vão algumas dicas que podem ajudar:

Conclusão

Com a Concurrency Acessível e o uso do ator principal como padrão, a Apple busca aliviar o fardo que muitos desenvolvedores enfrentam ao lidar com concorrência. Essa mudança é uma resposta às queixas de que a adoção do modelo de concorrência rígido do Swift 6 trouxe muitos desafios. No fim das contas, essa nova abordagem parece promissora, especialmente para desenvolvedores que atuam em aplicativos móveis, onde a simplicidade e a eficiência são cruciais.

Minha recomendação é que você comece a explorar essas novas funcionalidades assim que puder. A programação deve ser uma ferramenta que facilite a vida, e não um labirinto de erros e complicações. O futuro parece mais claro com essas inovações!