国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發(fā)設計 > 正文

iOS鏈式編程框架介紹之LinkBlock(iOS鏈式編程)

2019-11-14 18:28:45
字體:
來源:轉載
供稿:網友

iOS鏈式編程之LinkBlock

  首先謝謝大家點星星。

  [LinkBlock GitHub下載]

  從所周知,objc是非常奇怪的語言之一,如果沒有蘋果養(yǎng)著它,它因該已經只是教科書的課后拓展了。最直觀感受就是一般中括號超過三層,不忍直視了。

所以綜合考慮完成了一個覆蓋基本面的擴展框架LinkBlock,基本上開發(fā)中常用的方法在這個版本中都可以點出來使用了。

  整個框架基于對NSObject的拓展,所有方法依托于擴展的屬性,他們都是block類型。

  寫法簡單,一氣呵成,減少思路被繁瑣創(chuàng)建打斷:

@"0xff22cc".strToColorFromHexStr();btn.viewSetFrame(20,20,150,80).viewBGColor(@"0xff22cc".strToColorFromHexStr()).viewAddToView(self.view).btnTitle(@"click change color", UIControlStateNormal);NSComparisonResult result = @"".setTo(&str).strAppend(@"abc1.txt").strCompareNumberSensitive(@"abc2.txt");

  框架考慮的對objc取值的安全性問題,為了保證程序不因從網絡獲取到異常的值而崩潰,框架提供強類型的取值如:

dict.dictGetNoNSNull(@"key");dict.dictGetBOOLNoNullType(@"key");dict.dictGetArrNoNullType(@"key");dict.dictGetViewNoNullType(@"key");

  同時這也是對于學習Block用法的一個樣例。

  同時解釋一下為什么在NSObject上進行拓展,這是為了解決鏈式調用某一環(huán)調用失敗的問題,必須做到兩點才不會崩潰,第一:所有對象都響應所有擴展的屬性,這保證了在對象不為空的時候調用不崩潰。第二:鏈條中間環(huán)節(jié)不能傳遞nil這個家伙,你知道的[nil XXFuntion]這樣是不崩潰的,但是nil.XXPRoperty一定崩潰的。所以中間傳遞一個單例的錯誤對象,才能保證鏈條不崩潰的情況下調用到最后一環(huán)。那么如果為了安全的獲取到最后一環(huán)的真實返回值,框架唯一一點額外的要求就是使用end()在最后一環(huán)調用一下。那么所有過程都是安全快速的。

  框架除了對數組,字典,字符串著力外,還對視圖和常用動畫的使用也加入進來。但并不提供特別化的功能,為的是輕量和容易掌握。

 
 
 
 

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 额敏县| 噶尔县| 康定县| 乐至县| 宝应县| 霍州市| 沙洋县| 论坛| 应用必备| 广昌县| 本溪市| 台南县| 施甸县| 莲花县| 五华县| 江川县| 四会市| 玉林市| 玛纳斯县| 连南| 连南| 合川市| 凤阳县| 印江| 连州市| 鸡东县| 类乌齐县| 东莞市| 元阳县| 瓮安县| 漠河县| 新野县| 卓尼县| 嵊州市| 五指山市| 宣恩县| 泰和县| 朝阳县| 巴林左旗| 阿鲁科尔沁旗| 康定县|