- Published on
Swift-da protokols
- Authors
- Name
- ShoxruxC
- @iOSdasturchi
Hammaga yana xush kelibsiz!
Hammaga yana xush kelibsiz, mening ismim Nik, bu “Swiftful Thinking”. Biz bu pleylistni deyarli yakunladik – juda yaqinlashdik! Hali taslim bo‘lmang, bu oxirgi video bo‘lishi mumkin yoki undan keyin bir-ikkita qolgan bo‘lishi ham mumkin. Agar siz kod yozishni endi o‘rganayotgan bo‘lsangiz, keyingi pleylist sifatida SwiftUI Bootcampni tavsiya qilaman.
SwiftUI’da har bir ekran View protocoliga mos keladi – shuning uchun bu videoni tayyorladim. Protocol’lar o‘zi ilg‘or mavzu – yangi boshlovchi sifatida uzoq vaqt o‘z protocol’ingizni yaratishingiz shart emas. Men ilova qurganimda ham protocol yozmasdan ishlaganman. Hozir chuqur bilish shart emas, lekin protocol nima ekanligiga yuqori darajada kirish beraman – chunki SwiftUI Bootcamp’da har bir view ushbu protocol’ga mos keladi. Bu nima anglatishini va keyingi 100 ta faylda ko‘radigan kodni tushunib oling. Keling, kodga o‘tamiz – birinchi protocol yozamiz va SwiftUI view’ga qaraymiz!
Yana xush kelibsiz!
Bu pleylistni deyarli tugatdik. Bu oxirgi video – yangi boshlovchilar uchun shart bo‘lmagan, lekin kodda tez-tez uchraydigan narsani tushuntiraman. SwiftUI’da har bir view protocol’ga mos keladi – shuni qisqacha tushuntirib, keyingi pleylistda ko‘radigan kodni tushunishingizga yordam beraman.
Yangi fayl yarating: Navigator-da o‘ng tugma bilan bosing, yangi Playground sahifasini yarating va uni “Protocols” deb nomlang.
Protocol’lar
/*
Protocols - A set of rules or requirements that an object must follow
*/
Protocol’lar Swift’da ilg‘or mavzu – chuqur tushunish hozir shart emas, faqat ular nima ekanligini ko‘rsataman.
Struct va protocol
struct EmployeeModel {
let title: String
let name: String
}
protocol EmployeeHasAName {
var name: String { get }
}
struct EmployeeModel: EmployeeHasAName {
let title: String
let name: String
}
protocol EmployeeHasAName– qoidalar ro‘yxati: har qanday mos keluvchi ob’ektnamexususiyatiga ega bo‘lishi kerak.EmployeeModel: EmployeeHasAName– struct protocol’ga mos keladi, chunkinamebor.- Agar
namebo‘lmasa, xato beradi:struct EmployeeModel: EmployeeHasAName { let title: String // Xato: 'name' yo‘q }
SwiftUI View protocol
SwiftUI’da har bir view – struct bo‘lib, View protocoliga mos keladi. Buni ko‘rish uchun:
- Yangi loyiha yarating: File > New > Project > App (Multiplatform) > “MyTestApp” deb nomlang > Saqlang.
- Kod misoli:
import SwiftUI
struct ContentView: View {
var body: some View {
Text("Hello World")
}
}
struct ContentView: View– View protocol’iga mos keladi.body– View protocol’ining talabi:some Viewturidagi xususiyat bo‘lishi kerak.- Agar
bodyqo‘shilmasa, xato: “Type 'ContentView' does not conform to protocol 'View'”.
Tushuntirish
- Protocol – qoidalar ro‘yxati.
Viewprotocol’i – har bir SwiftUI view’dabodybo‘lishini talab qiladi.- Keyingi 50 ta videoda bu sintaksisni ko‘rasiz – shuni tushunib oling.
Xulosa
Bu pleylistni yakunladik! Protocol’lar haqida qisqacha ma’lumot berdim – hozir o‘zingiz yozishingiz shart emas, lekin SwiftUI’da har bir view shunday yozilishini bilib oling.
Agar bu pleylist sizga yoqsa, keyingi qadam – SwiftUI Bootcamp. Bu pleylist ikki yil avval chiqqan, lekin hali ham dolzarb – bir-ikki video eskirgan bo‘lsa ham, oxirida yangilangan versiyalarini qo‘shganman. SwiftUI’da ekranlar qurishni o‘rganasiz – matn, shakllar, ranglar qo‘shish bu pleylistdan ancha qiziqarli!
Rahmat!
- *“Swiftful Thinking”**ni tanlaganingiz uchun rahmat – bu katta sharaf! Kod yozishni o‘rganish qiyin, lekin men uni osonlashtirishga harakat qildim. Savollaringiz bo‘lsa, Discord’ga qo‘shiling. Men Nikman, bu **“Swiftful Thinking”**, keyingi videoda ko‘rishguncha!