0Pricing
Swift Academy · Pelajaran

Komposisi Protokol dengan &

Menggabungkan beberapa protokol menjadi satu persyaratan tipe.

Komposisi Protokol dengan & adalah pelajaran Swift Academy gratis di CoddyKit. Ini adalah pelajaran 1 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Swift Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Swift Academy mencakup 4 pelajaran total.

Selamat Datang

Komposisi protokol memungkinkan Anda menggabungkan beberapa protokol menjadi satu persyaratan tipe menggunakan `&`. Inilah jawaban Swift terhadap pewarisan berganda.

Komposisi Dasar

```swift protocol Named { var name: String { get } } protocol Aged { var age: Int { get } } func describe(_ entity: Named & Aged) { print("\(entity.name) is \(entity.age)") } ``` `Named & Aged` adalah persyaratan tipe sementara, bukan protokol baru.

Menggunakan Komposisi dalam Parameter Fungsi

```swift protocol Drawable { func draw() } protocol Animatable { func animate() } func render(_ view: Drawable & Animatable) { view.draw() view.animate() } ```

Menyimpan Tipe Gabungan

```swift var entity: Named & Aged = makePerson() entity.name // accessible entity.age // accessible ``` Tipe variabel membatasi anggota protokol mana yang dapat diakses.

Komposisi dengan Class

```swift protocol Configurable { func configure() } func setup(_ vc: T) { vc.configure() present(vc, animated: true) } ``` Gabungkan persyaratan class dengan protokol menggunakan `&` dalam generik.

Komposisi Protokol vs Protokol Baru

```swift // Don't create a new protocol just to combine: protocol NamedAndAged: Named, Aged {} // often unnecessary // Prefer inline composition at use sites: func describe(_ e: Named & Aged) { } ``` Protokol baru hanya masuk akal jika kombinasi tersebut memerlukan metode ekstensi.

typealias untuk Komposisi Panjang

```swift typealias Service = Authenticable & Cacheable & Loggable func process(service: Service) { service.authenticate() service.log("processing") } ``` Gunakan `typealias` untuk memberi nama pada komposisi yang sering digunakan.

Komposisi dalam Batasan Generik

```swift func fetchAndCache(_ resource: T) async throws { let data = try await resource.fetch() resource.cache(data) } ```

Pewarisan Protokol vs Komposisi

• Pewarisan: `protocol C: A, B {}`—C mewarisi semua persyaratan dari A dan B • Komposisi: `A & B`—ditulis langsung tanpa tipe baru Gunakan pewarisan ketika semua tipe yang menyesuaikan harus memenuhi keduanya; gunakan komposisi di tempat pemanggilan.

Contoh di Dunia Nyata: Delegasi + DataSource

```swift func setup(_ vc: UITableViewDelegate & UITableViewDataSource) { tableView.delegate = vc tableView.dataSource = vc } ``` Satu pengendali tampilan sering memenuhi keduanya—komposisi memungkinkan Anda menyatakannya secara ringkas.

Pemeriksaan Singkat

Operator mana yang menggabungkan beberapa protokol menjadi satu persyaratan tipe?

Rangkuman

Hal-hal penting: • `Protocol1 & Protocol2`—komposisi langsung • Gunakan dalam parameter, tipe hasil, dan batasan generik • `typealias` memberi nama pada komposisi yang sering digunakan • Utamakan komposisi daripada membuat protokol baru tanpa isi • Persyaratan class dapat digabungkan: `UIViewController & MyProtocol` Berikutnya: kesesuaian bersyarat.

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Komposisi Protokol dengan &” gratis?

Ya — teks lengkap “Komposisi Protokol dengan &” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Swift Academy, upgrade ke CoddyKit PRO. Kursus Swift Academy mencakup 4 pelajaran total.

Apa yang akan aku pelajari di “Komposisi Protokol dengan &”?

Menggabungkan beberapa protokol menjadi satu persyaratan tipe. Kamu berlatih Swift Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai Swift Academy?

Tidak diperlukan pengalaman sebelumnya. Swift Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 1 dari 4.

Berapa lama pelajaran “Komposisi Protokol dengan &” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran Swift Academy ini?

Ya. Setiap pelajaran Swift Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. Komposisi Protokol dengan &
  2. Kesesuaian Bersyarat
  3. Persyaratan Self dan Rancangan Equatable
  4. Prinsip Rancangan Berorientasi Protokol
← Kembali ke Swift Academy