Swift: print() vs println() vs NSLog() — o que escolher para logging?
Olá a todos! Sou um desenvolvedor iOS iniciante e estou escrevendo meu primeiro aplicativo em Swift. Me deparei com o fato de que para exibir mensagens no console posso usar várias funções diferentes: `print()`, `println()` e `NSLog()`. Já vi que `println()` está meio obsoleto, mas ainda aparece em tutoriais antigos.
Atualmente, uso `print()` para depuração, mas notei que quando escrevo:
```swift
print("User logged in")
```
No console é exibida apenas a string. Mas quando um colega mostrou `NSLog`:
```swift
NSLog("User logged in")
```
Aparecem data, hora, nome do processo e PID. Isso é conveniente para produção? Ou é melhor não usar `NSLog` por causa da performance?
Também ouvi falar sobre `os_log` do framework `os.log`, mas não entendo para que serve, se `print()` já funciona. Por favor, me expliquem qual é a diferença entre essas abordagens e qual delas é melhor usar em projetos modernos? É importante para mim entender não apenas a sintaxe, mas também quando aplicar cada ferramenta.