Saat Dilimleri ve Yerel Ayarlar
Saat dilimi ve yerel ayar farklılıklarını doğru biçimde işleyin.
Saat Dilimleri ve Yerel Ayarlar, CoddyKit'te ücretsiz bir Swift Academy dersidir. Bu, 4 dersinin 4. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Swift Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Swift Academy kursu toplamda 4 dersten oluşur.
Saat Dilimleri ve Yerel Ayarlar
Aynı Date anı dünyanın farklı yerlerinde farklı görüntülenir. TimeZone ve Yerel Ayar, bu anın nasıl yorumlanacağını ve gösterileceğini belirler.
TimeZone Temelleri
Bir TimeZone, UTC'ye göre bir uzaklığı ve yaz saati uygulaması kurallarını temsil eder. TimeZone.current, cihazın saat dilimidir.
import Foundation
let tz = TimeZone.current
print("Identifier present: \(!tz.identifier.isEmpty)")Belirli Bir Saat Dilimi Oluşturma
TimeZone(identifier:) ile adlandırılmış bir saat dilimi oluşturun; örneğin "America/New_York" veya "Europe/Istanbul".
import Foundation
if let tokyo = TimeZone(identifier: "Asia/Tokyo") {
print("Tokyo offset seconds: \(tokyo.secondsFromGMT())")
}GMT'ye Göre Uzaklıklar
secondsFromGMT(for:), yaz saati uygulaması nedeniyle yıl boyunca değişebilen geçerli uzaklığı verir.
import Foundation
let utc = TimeZone(identifier: "UTC")!
print("UTC offset is zero: \(utc.secondsFromGMT() == 0)")Saat Dilimleri Takvimleri Etkiler
Gün ve saat hesaplamalarının cihazın varsayılanı yerine ilgili bölgeyi kullanması için takvimin timeZone değerini ayarlayın.
import Foundation
var cal = Calendar.current
cal.timeZone = TimeZone(identifier: "UTC")!
let hour = cal.component(.hour, from: Date())
print("Hour in UTC between 0 and 23: \(0...23 ~= hour)")Biçimlendirmede Saat Dilimleri
Bir Date.FormatStyle, belirli bir saat dilimini taşıyabilir; böylece çıktı, cihaz ayarlarından bağımsız olarak o bölgeyi yansıtır.
import Foundation
let style = Date.FormatStyle(date: .omitted, time: .shortened)
.timeZone(TimeZone(identifier: "UTC")!)
let s = Date().formatted(style)
print(!s.isEmpty)Yerel Ayar Temelleri
Bir Locale, dil ve bölgesel kuralları kapsar: ay adlarını, haftanın ilk gününü, sayı ve tarih sıralamasını belirler.
import Foundation
let locale = Locale.current
print("Has identifier: \(!locale.identifier.isEmpty)")Yerel Ayar Oluşturma
Locale(identifier:) ile belirli bir yerel ayar oluşturun; örneğin "fr_FR" veya "tr_TR".
import Foundation
let french = Locale(identifier: "fr_FR")
print("French locale id: \(french.identifier)")Yerel Ayar Çıktıyı Değiştirir
Bir yerel ayarı biçim stiline uygulamak, ay adlarını ve sıralamayı değiştirir. Aynı tarih her dilde farklı okunur.
import Foundation
let now = Date()
let style = Date.FormatStyle(date: .long, time: .omitted)
.locale(Locale(identifier: "en_US"))
print(!now.formatted(style).isEmpty)Yerel Ayar ve Calendar Birlikte
Yerel ayar, takvimin haftanın ilk gününü ve hafta numaralandırmasını da etkiler. Tamamen doğru sonuçlar için saat dilimini, yerel ayarı ve takvimi birlikte kullanın.
import Foundation
var cal = Calendar(identifier: .gregorian)
cal.locale = Locale(identifier: "en_US")
print("First weekday: \(cal.firstWeekday)")UTC'de Saklama, Yerel Gösterme
En iyi uygulama: tarihleri UTC olarak saklayıp aktarın; ardından yalnızca görüntüleme sırasında kullanıcının saat dilimine ve yerel ayarına dönüştürün.
import Foundation
let instant = Date()
let utcStyle = Date.FormatStyle(date: .numeric, time: .standard)
.timeZone(TimeZone(identifier: "UTC")!)
print("UTC display ready: \(!instant.formatted(utcStyle).isEmpty)")Kısa Kontrol
Bölgeler arasında tarihleri ele almanın önerilen yolu nedir?
Özet
TimeZone, UTC uzaklığını ve DST kurallarını belirlerken Yerel Ayar, dil ve bölgesel biçimlendirmeyi denetler. Her ikisi de takvimlere ve biçim stillerine eklenebilir. Tarihleri UTC olarak saklayın ve yalnızca görüntülerken yerel saat dilimine ve yerel ayara dönüştürün. Böylece tarihler ve takvimler kursu tamamlanır.
Sıkça Sorulan Sorular
“Saat Dilimleri ve Yerel Ayarlar” dersi ücretsiz mi?
Evet — “Saat Dilimleri ve Yerel Ayarlar” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Swift Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Swift Academy kursu toplamda 4 dersten oluşur.
“Saat Dilimleri ve Yerel Ayarlar” dersinde ne öğreneceğim?
Saat dilimi ve yerel ayar farklılıklarını doğru biçimde işleyin. Swift Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.
Swift Academy öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te Swift Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 4. dersidir.
“Saat Dilimleri ve Yerel Ayarlar” dersi ne kadar sürer?
Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.
Bu Swift Academy dersinde kod yazıp çalıştırabilir miyim?
Evet. Her Swift Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.
Bu kursun tüm dersleri
- Date Türü ve Zaman Aralıkları
- Calendar ve DateComponents
- Tarihleri Biçimlendirme
- Saat Dilimleri ve Yerel Ayarlar