面向人文协议的编程
当心! Story ini menggunakan类似物Superhero dari DC Comics。
Sebagai程序员,Pasta sudah terbiasa dengan 面向对象编程 。 Dimana paradigma pemrograman itu banyak memberi solusi untuk membuat arsitektur 可重用 代码 。 Namun OOP sendiri juga memiliki beberapa kekurangan,Yang kemudian pada tahun 2015,Swift memperkenalkan 面向协议的编程 ,yang bisa menangani kekurangan tersebut。
Definisi 协议 sendiri adalah :
协议定义了适合特定任务或功能的方法,属性和其他要求的蓝图。
Setiap 方法,属性,dll,协议,类,类, 要求, 协议 。 Contoh nya seperti:
Dapat dilihat bahwa 协议 tersebut memiliki 2个属性:
- 武术
- 武器装备
setiap 类,struct, atau 枚举 yang mengaplikasikan 协议 tersebut wajib untuk menginisasi ke 2个属性 tersebut:
结构GothamCity Menginisiasi 属性 Yang Dimiliki 协议 Batman 。
Done〜,sekarang Gotham市dapat dilindungi dari serangan 恶棍 seperti Joker,企鹅,Enigma和Two-Face。
等等,拉鲁·巴加伊玛娜·卡劳·蒂巴·蒂巴的开发商 memutuskan ada serangan lain dari villains yang lebih kuat seperti世界末日/ Darkseid吗? 蝙蝠侠seorang diri tentu tidak sanggup。
多协议
阿达(Ada)超级英雄莱恩·比萨·孟买(Lamb yang bisa membantu):
kembali, 协议超人dapat digunakan setelah属性nya di inisiasi:
协议继承
Sepertinya masih banyak kemampuan超人&tidak hanya sebatas 热视觉 。 Namun untuk膜可重用代码, kita dapat膜协议可继承。
ke 3属性tersebut dapat di继承其他协议 lain:
dapat dilihat bahwa 属性和方法 dari berbagai 协议 tersebut dapat digunakan oleh struct tersebut。
协议扩展
Setelah menggunakan berbagai协议的内容,方法和方法yang sama。 🤔
Ada fitur 强大的 POP,yaitu 默认实现 menggunakan 协议扩展。
好的〜,sekarang setiap协议superPower digunakan, 属性和方法 di dalam 协议 tersebut sudah memiliki nilai / action default 。
Meskipun POP dapat menutupi kekurangan yang dimiliki oleh OOP,tetaplah diingat bahwa tidak ada paradigma pemrograman yang sempurna,semua harus dipertimbangkan sesuai dengan kebutuhan untuk membuat code yang 可重复使用 &tidak 冗余。