iT邦幫忙

0

IOS Swift 請問你哪位 ? Protocol<協定>自我介紹。

前言

昨天問了面試網頁前端的問題,收到板上前輩的許多回應真的是受寵若驚,讓我感受到IT人的剛性溫暖非常感謝。昨天去完了共享沙龍,是由self Pick老闆嘉凱導演舉辦的活動,性質較偏向社交透過談吐可以認識很多不同行業的人,當中也會圍繞著一個主題進行分享,但也可以聊自己想聊的。我跟我大學最好的朋友去到那一開始有些尷尬,但到了後面經過酒精的催化,跟許多不同行也的人聊天了解了很多有關社會放的秘辛,由於我們還沒踏入社會所以在經驗上我們能分享的很有限,大多只能提出看法及丟出問題,當中跟一位在Apple公司上班的sale及一位專利師聊得很愉快,也給我們許多建議及解答,雖然你們可能看不到這篇但謝謝你們,總之我覺得這種活動我應該會常去,之後也會大家分享我收穫了什麼。
https://ithelp.ithome.com.tw/upload/images/20210424/20136753q3xjwvUXKC.jpg


接下來我會由Protocol先生的第一視視角大家做介紹

哈囉~~

初次見面我叫Protocol你們也可以叫我P先生,我的中文名字叫'協定'拉,很難聽對吧所以你們還是叫我P先生好了。

我在幹嘛

哦~你問我為什麼會出現喔,我不隨便跟別人說喔,但看在我們很有緣的分上我就告訴你吧,我最主要的功能是讓大家掛上我,但有個條件當你掛上我之後你就一定要使用我製造出來的東西,你聽不懂嗎?我舉例給你看。

protocol Human {
   func SayHi()
}

定義protocol的名稱通常我們都會大寫
這是我的樣貌,而在大括弧裡面你可以自定義你跟protocol約定的func,但之後想要繼承我的話一定有使用裡面的方法(我講第二次囉)

怎麼使用

我們先建立一個Class(類別)

class peopele { }

而這個類別要繼承上面的protocol,就會變這樣

class peopele:Human {
  func SayHi() {
       print("Hello")
     }
  }

一定要使用協定裡面的方法喔,不然會出錯(第三次)

接下來我們接類別實體化

Jacky = People()

再來我們就可以呼叫我們剛剛繼承Human內的func了喔

 Jacky.SayHi()
 // Hello

很容易吧,雖然你感覺我好像沒什麼,但實際上我有跟許多大公司合作過喔,如果你們想使用這些大公司的方法就一定要呼叫我,不然你們都不能用哈哈...

PickerView

這間選單公司公司就是我合作的對象之一,當你要使用它來設定有幾列選單或每一列有幾個選項,你就一定要先在你的ViewController使用協定,綁上UIViewController及UIPickerViewDataSource,才能執行回傳有幾列選單或每一列有幾個選項的func,若你直接打上這些func沒有綁上我你一定會出錯~厲害吧。

下次我在更加深入介紹我自己掰掰。


尚未有邦友留言

立即登入留言