Avatar ·

Geração de string alfanumérica aleatória em Swift

Olá a todos! Estou escrevendo um aplicativo para iOS em Swift e preciso gerar strings aleatórias compostas por letras (latim, maiúsculas e minúsculas) e dígitos. Por exemplo, para criar identificadores únicos ou senhas temporárias. Sou iniciante, e minha implementação atual é assim: ```swift let letters = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789" var randomString = "" for _ in 0..<10 { let randomIndex = Int(arc4random_uniform(UInt32(letters.count))) randomString.append(letters[letters.index(letters.startIndex, offsetBy: randomIndex)]) } print(randomString) ``` Isso funciona, mas sinto que o código é verboso e não muito "swift-like". Primeiro, `arc4random_uniform` está obsoleto no Swift 4.2+, e o Xcode emite um aviso. Segundo, calcular o índice via `index(startIndex, offsetBy:)` parece ineficiente, especialmente se a string for longa. Terceiro, não tenho certeza se isso é seguro para fins criptográficos (por exemplo, para tokens). Diga-me como fazer corretamente.