Introdução: por que a versão do Swift não é apenas um número?
\n\nVocê já se deparou com uma situação em que o código, funcionando perfeitamente em uma máquina, apresenta erros estranhos em outra? Ou talvez você esteja lendo o Stack Overflow e veja uma resposta que menciona "Swift 5.7", mas você tem algo diferente instalado? A pergunta "How do I see which version of Swift I'm using?" é uma das mais populares no Stack Overflow (milhares de visualizações!). E não é por acaso.
\n\nSaber a versão do Swift não é apenas uma formalidade técnica. É a chave para a otimização e o desempenho do seu código. Cada nova versão do Swift traz não apenas novos recursos, mas também correções de bugs, melhorias na velocidade de compilação e execução. Por exemplo, a transição do Swift 4 para o Swift 5 nos deu um ABI estável (Application Binary Interface), que acelerou drasticamente a inicialização de aplicativos. E o Swift 6 promete segurança de memória e concorrência ainda mais rigorosas.
\n\nNeste artigo, não vamos apenas mostrar como saber a versão do Swift. Vamos abordar 3 métodos comprovados, adicionar exemplos reais de código e dar dicas de otimização que ajudarão você a escrever aplicativos mais rápidos e seguros. Vamos nessa!
\n\nMétodo nº 1: Xcode — o mais óbvio e visual
\n\nSe você trabalha no Xcode (e este é o padrão para desenvolvimento iOS/macOS), saber a versão do Swift é literalmente questão de dois cliques. Isso é importante porque o Xcode geralmente vem com várias versões do Swift, e o projeto pode estar configurado para uma versão antiga.
\n\nComo verificar no Xcode:
\n- \n
- Abra seu projeto. \n
- Vá para o Project Navigator (painel esquerdo). \n
- Clique no nome do projeto (o elemento mais acima). \n
- Selecione o target (seu aplicativo). \n
- Vá para a aba Build Settings. \n
- Na barra de pesquisa, digite
Swift Language Version. \n
Você verá algo como Swift 5 ou Swift 4.2. Essa é a versão que seu projeto está usando.
Por que isso é importante para o desempenho?
\nSe você estiver usando uma versão antiga do Swift (por exemplo, 4.0), estará perdendo as otimizações do compilador disponíveis no Swift 5+. No Swift 5, foi introduzido um novo gerenciador de memória que reduz o número de cópias de objetos. Isso afeta diretamente a velocidade do aplicativo, especialmente ao trabalhar com grandes arrays ou estruturas de dados.
\n\n// Exemplo: no Swift 5, as estruturas são copiadas de forma lazy (COW - Copy on Write)\nvar array1 = [1, 2, 3, 4, 5]\nvar array2 = array1 // No Swift 5, isso não cria uma cópia imediatamente\narray2.append(6) // Só aqui ocorre a cópia real\n// Resultado: array1 = [1,2,3,4,5], array2 = [1,2,3,4,5,6]\n\nNo Swift 4, esse comportamento era menos eficiente. Portanto, verificar a versão é o primeiro passo para a otimização.
\n\nMétodo nº 2: Terminal — rápido e preciso
\n\nÀs vezes, o Xcode não está disponível, ou você está trabalhando em CI/CD (Continuous Integration). O terminal é seu melhor amigo. O comando swift --version fornecerá informações completas.
Como executar:
\nswift --version\n\nA saída será algo como:
\nApple Swift version 5.9 (swiftlang-5.9.0.128.108 clang-1500.0.40.1)\nTarget: arm64-apple-macosx14.0\n\nObserve a primeira linha: Apple Swift version 5.9. Essa é a versão do compilador.
Dica de otimização: use flags do compilador
\nSabendo a versão do Swift, você pode instruir explicitamente o compilador a usar uma versão específica da linguagem. Isso é útil se você tiver várias versões instaladas (por exemplo, via Xcode Toolchains).
\n\n// Exemplo: forçar o uso do Swift 5\nswift build -Xswiftc -swift-version -Xswiftc 5\n\nIsso é especialmente relevante para a otimização da compilação. Se