一、介紹
鏈式程式設計是乙個比較新穎的程式設計方式,簡單直觀,用起來也比較舒服。目前比較有名的mansory和babybluetooth就是使用鏈式程式設計寫的第三方框架。
二、寫法
鏈式程式設計寫法不同於傳統方式,初次寫起來比較彆扭,但是一旦習慣了,用起來比較得心應手。那麼,如何寫呢?其實就是乙個物件呼叫它的例項方法後返回乙個block(已經定義過),而這個block內部又返回該物件。依此類推,該物件不論呼叫多少個它的例項方法,最終都會返回該物件本身。
三、例項
learnmanager類定義和實現
////chainprogramming
////
created by 夏遠全 on 2017/9/30.
//#import/**
定義block,返回值型別是learnmanager物件 */
@class
learnmanager;
typedef learnmanager *(^learnchineseblock)(nsstring *chinesename);
typedef learnmanager *(^learnenglishblock)(nsstring *englishname);
typedef learnmanager *(^learnfranchblock) (nsstring *franchname);
@inte***ce
learnmanager : nsobject/**
定義物件方法
@return 返回值是定義過的block */
-(learnchineseblock)learnchinese;
-(learnenglishblock)learnenglish;
-(learnfranchblock)learnfranch;
@end
////chainprogramming
//created by 夏遠全 on 2017/9/30.
//#import
"learnmanager.h
"@implementation
learnmanager
-(learnchineseblock)learnchinese;
}-(learnenglishblock)learnenglish;
}-(learnfranchblock)learnfranch;
}@end
viewcontroller類匯入並呼叫
////chainprogramming
////
created by 夏遠全 on 2017/9/30.
////
#import
"viewcontroller.h
"#import
"learnmanager.h
"@inte***ce
viewcontroller ()
@end
@implementation
viewcontroller
- (void
)viewdidload
@end
四、列印
2017-09-3018:41:10.288 chainprogramming[92884:3768713
] 學習語文!
2017-09-30
18:41:10.288 chainprogramming[92884:3768713
] 學習英語!
2017-09-30
18:41:10.289 chainprogramming[92884:3768713] 學習法語!
用golang寫乙個proxy
我複雜的網路環境中,proxy是個很有用的工具,我們可以通過proxy 幫我們完成網路流量的 這個proxy得先能接收請求,所以這裡先啟動乙個tcp的監聽,獲取請求 func s server start glog.infof proxy listen in s,waiting for connec...
用python寫乙個restful API
coding utf 8 package.module python實現的圖書的乙個restful api.restful api 一般模式 get select 從伺服器取出資源 一項或多項 post create 在伺服器新建乙個資源。put update 在伺服器更新資源 客戶端提供改變後的完...
用Python編乙個打小怪獸遊戲
用python編乙個打小怪獸遊戲import random import time while true input 請按回車鍵開始遊戲 print 遇到乙隻小怪獸 print 選擇是否打小怪獸?w input a 打小怪獸 b 不打小怪獸 n print 你的選擇是 w if w a p b ra...