O que é e para que serve?
Swift é uma linguagem de programação moderna da Apple para iOS, macOS, watchOS e tvOS. Trabalhar com datas é uma das tarefas principais no desenvolvimento móvel e desktop: desde exibir horários em chats até calcular prazos em aplicativos. No Swift, não há uma biblioteca separada para datas — toda a funcionalidade está incorporada no framework Foundation. Ele fornece as classes Date, DateFormatter, Calendar e DateComponents, que permitem criar, formatar, comparar e manipular datas.
Como instalar?
Foundation faz parte da biblioteca padrão do Swift, portanto, não é necessária instalação. Basta importar o módulo no seu arquivo: import Foundation. Para trabalhar com datas em projetos iOS/macOS (via Xcode), nenhuma dependência adicional é necessária.
Funções principais
- Criação de data:
Date()— data e hora atuais;Date(timeIntervalSinceNow:)— data daqui a N segundos. - Formatação:
DateFormatter— conversão de data para string (saída localizada) e vice-versa. - Componentes da data:
Calendar.current.dateComponents([.year, .month, .day], from: date)— extração de ano, mês, dia. - Comparação: operadores
==,<,>, além decompare(). - Manipulações:
Calendar.current.date(byAdding: .day, value: 7, to: date)— adicionar 7 dias.
Exemplo de código em Swift (iOS/macOS)
import Foundation
// Data atuallet now = Date()print("Agora: \\(now)")
// Formatação em string localizadalet formatter = DateFormatter()formatter.dateStyle = .longformatter.timeStyle = .shortformatter.locale = Locale(identifier: "pt_BR")let formatted = formatter.string(from: now)print("Data formatada: \\(formatted)")
// Extração do dia da semanalet calendar = Calendar.currentlet weekday = calendar.component(.weekday, from: now)print("Dia da semana (1=domingo): \\(weekday)")
// Adicionar 3 diasif let futureDate = calendar.date(byAdding: .day, value: 3, to: now) { print("Daqui a 3 dias: \\(formatter.string(from: futureDate))")}
// Parse de stringformatter.dateFormat = "yyyy-MM-dd"if let parsedDate = formatter.date(from: "2025-12-31") { print("Parseado: \\(parsedDate)")}Quando usar?
Use as ferramentas incorporadas do Foundation sempre que precisar trabalhar com datas em Swift: exibir horários na interface do usuário, calcular diferenças entre datas, criar calendários, lembretes, temporizadores, registrar eventos. Para cenários complexos (por exemplo, trabalhar com fusos horários ou eventos recorrentes), combine DateComponents e Calendar. Bibliotecas alternativas de terceiros (como SwiftDate) existem, mas para a maioria dos projetos, Foundation é suficiente.