Swift與Objective-C混合搭配在南昌APP開發(fā)中采用得是比較多的,這是因為很多老版本的項目還是使用Objective-C開發(fā)的。為了更大可能地利用老版本的代碼,可以把基于Objective-C編寫的業(yè)務(wù)邏輯層和數(shù)據(jù)持久層復(fù)用。由于iOS每次升級,表示層的API變化都很大,所以表示層一般很難復(fù)用,可以采用Swift語言重構(gòu)。
采用Swift與Objective-C混合搭配的分層架構(gòu)如圖1所示。MyNotes工程,如圖2所示,在Xcode工程導(dǎo)航面板中,共有3個組——PresentationLayer、BusinessLogicLayer和PersistenceLayer, PresentationLayer 使用的語言是Swift,BusinessLogicLayer和PersistenceLayer使用的語言是Objective-C。
Swift調(diào)用Objective-C對象時,需要添加橋接頭文件MyNotes-Bridging-Header.h,該文件的內(nèi)容如下:
#import "Note.h"
#import "NoteDAO.h"
#import "NoteBL.h"
在橋接頭文件中引入頭文件,是在Swift代碼中調(diào)用Objective-C對象所需要的頭文件。關(guān)于具體的調(diào)用實現(xiàn),感興趣的朋友可來電咨詢百恒網(wǎng)絡(luò),百恒網(wǎng)絡(luò)作為優(yōu)秀的南昌APP開發(fā)公司之一,精通各種APP開發(fā)技術(shù),如有需要,百恒網(wǎng)絡(luò)隨時為您效勞!