Swift — Apple kompaniyasi tomonidan Kris Lattner boshchiligida ishlab chiqilgan va 2014-yilgi WWDC konferensiyasida taqdim etilgan dasturlash tili. U Apple ekotizimida (iOS, macOS, watchOS, tvOS) oldingi asosiy til bo’lgan Objective-C‘ni almashtirish maqsadida yaratilgan.
Objective-C’ni almashtirish sababi
Objective-C 1980-yillarda yaratilgan bo’lib, o’zining murakkab sintaksisi (masalan, kvadrat qavslar ichida yoziladigan xabar yuborish usuli) va C tilidan meros bo’lib qolgan xavfsizlik kamchiliklari bilan tanqid qilinardi. Swift zamonaviy sintaksis, kuchli tur xavfsizligi va tezroq ishlash tezligini birlashtirib, Objective-C kodi bilan ham bevosita ishlashga qodir bo’lgan holda yaratilgan.
Xavfsizlik va Optionals
Swift’ning markaziy tushunchalaridan biri — Optionals mexanizmi bo’lib, u qiymat mavjud bo’lmasligi mumkinligini tur darajasida aniq ko’rsatishga majbur qiladi. Dasturchi nil qiymatga ega bo’lishi mumkin bo’lgan o’zgaruvchini ishlatishdan oldin uni albatta tekshirishi yoki xavfsiz “ochishi” (unwrap) kerak, bu esa Objective-C‘da keng tarqalgan bo’lgan kutilmagan nil bilan bog’liq nosozliklarning oldini oladi.
SwiftUI bilan integratsiya
2019-yilda taqdim etilgan SwiftUI freymvorki foydalanuvchi interfeysini deklarativ uslubda, ya’ni “nima ko’rinishi kerakligini” tasvirlash orqali qurish imkonini beradi, avvalgi imperativ UIKit yondashuvidan farqli o’laroq. SwiftUI kod yozilishi bilan interfeys ko’rinishini jonli ravishda Xcode ichida ko’rsatib turadi, bu esa ishlab chiqish tezligini oshiradi.
Ochiq manba bo’lishi
2015-yilda Apple Swift’ni ochiq manbali litsenziya ostida chop etdi va til endi faqat Apple qurilmalarida emas, balki Linux va hatto Windows‘da (cheklangan darajada) ham ishlashi mumkin. Shunga qaramay, tilning asosiy qo’llanilish maydoni hamon Apple platformalari bo’lib qolmoqda.
Platformaga bog’liqligi
Swift’ning eng katta cheklovi — uning ekotizimi va ko’plab muhim kutubxonalari Apple platformalariga qattiq bog’langan. Bu holat Swift’ni cross-platform mobil ishlab chiqishda Flutter yoki React Native kabi vositalarga qaraganda kamroq moslashuvchan qiladi, chunki Android uchun alohida kod bazasi (odatda Kotlin‘da) yozish talab etiladi.
Bog’liq tushunchalar
Objective-C, SwiftUI, Apple, iOS, Xcode, LLVM, Kotlin