十年專注于品牌網站建設 十余年專注于網站建設_小程序開發_APP開發,低調、敢創新、有情懷!
      南昌百恒網絡微信公眾號 掃一掃關注
      小程序
      tel-icon全國服務熱線:400-680-9298,0791-88117053
      掃一掃關注百恒網絡微信公眾號
      掃一掃打開百恒網絡微信小程序

      百恒網絡

      南昌百恒網絡

      基于同一工作空間框架實現的WFSSS模式

      百恒網絡 2017-06-09 5138

      從之前所學可知使用靜態鏈接庫比較麻煩,需要給使用者提供.a和.h文件,還要配置很多環境變量?;谕还ぷ骺臻g框架實現的分層可以有WFSSS、WFOOO、WFSOO和WFOSS模式,接下來南昌網站制作公司先給大家介紹WFSSS模式。

      1.創建框架工程

      首先,創建一個工作空間,然后添加表示層工程到工作空間,接著創建數據持久層和業務邏輯層的框架工程,具體創建過程如下:在Xcode中選擇菜單項File→New→ Project…,在打開的對話框中選擇Framework& Library→Cocoa Touch Framework工程模板,如圖1所示。

      創建框架工程

      圖1 創建框架工程

      如果我們是在工作空間中創建工程,創建過程中要選擇工作空間。如圖2所示,在Add to和Group中都選擇MyNotesWorkspace,然后點擊Create按鈕創建工程。

      選擇工作空間

      圖2 選擇工作空間

      2.依賴關系建立

      三個工程的依賴是:BusinessLogicLayer依賴于PersistenceLayer,PresentationLayer依賴于BusinessLogicLayer。BusinessLogicLayer和PersistenceLayer都是框架工程,我們需要設置BusinessLogicLayer依賴于PersistenceLayer,相對來講要比靜態鏈接庫建立依賴關系要簡單得多。

      首先,選擇TARGETS→BusinessLogicLayer→Build Phases→Link Binary With Libraries,如圖3所示,選擇左下角的+按鈕,然后從彈出界面中選擇PersistenceLayer.framework,再點擊Add按鈕,這樣依賴關系就添加好了。

      添加依賴關系

      圖3 添加依賴關系

      參考上面的步驟設置PresentationLayer和BusinessLogicLayer的依賴關系。另外,框架工程還需要設置PresentationLayer和PersistenceLayer的依賴關系,最后結果如圖4所示。

      添加完依賴關系

      圖4 添加完依賴關系

      提示:表示層工程依賴于框架工程時,需要設置業務邏輯層和數據持久層兩個依賴關系。而在靜態鏈接庫工程時,表示層工程只需要與業務邏輯層建立依賴關系即可,這是因為業務邏輯層靜態鏈接庫文件(libBusinessLogicLayer.a)內部已經包含了數據持久層相關類了。

      3.代碼重構

      為了適應于在工作空間中使用框架,我們需要將10.4.1節的代碼進行重構,這主要是修改訪問類、方法和屬性的訪問限定級別。

      1. 重構Note.swift

      Note類的代碼如下:

      Note類的代碼

      我們需要為Node類添加public訪問限定修飾符,還需要在屬性date和content中添加public訪問限定修飾符。構造器init也應該是public的。

      2. 重構NoteDAO.swift

      NoteClass類的代碼如下:

      NoteClass類的代碼

      上述代碼中,第①行的listData屬性的訪問限定級別是默認,而不是public的。類和方法的訪問限定級別是public。

      3. 重構NoteBL

      NoteBL類的代碼如下:

      NoteBL類的代碼

      上述代碼中,第①行用于引入PersistenceLayer(數據持久層)模塊。如果不引入該模塊,則在PersistenceLayer框架中找不到Note類和NoteDAO類,而且這兩個類還應該是public的。第②行代碼用于聲明默認構造器init的訪問限定級別是public。

      此外,在表示層PresentationLayer,也需要修改代碼import代碼:

      import BusinessLogicLayer

      import PersistenceLayer

      想了解更多關于這方面的知識的朋友,隨時歡迎您來電和我們聯系,本公司專注于南昌APP開發,具有十多年的豐富經驗,如有需要,百恒隨時為您服務!

      400-680-9298,0791-88117053
      掃一掃關注百恒網絡微信公眾號
      掃一掃打開百恒網絡小程序

      歡迎您的光顧,我們將竭誠為您服務×

      售前咨詢 售前咨詢
       
      售前咨詢 售前咨詢
       
      售前咨詢 售前咨詢
       
      售前咨詢 售前咨詢
       
      售前咨詢 售前咨詢
       
      售后服務 售后服務
       
      售后服務 售后服務
       
      備案專線 備案專線
       
      ×
      久久精品无码精品免费专区| 亚洲精品乱码久久久久久蜜桃| 精品伊人久久大线蕉色首页| 秋霞久久国产精品电影院| 国产精品原创巨作?v网站| 日韩无套内射视频6| 一区二区三区日韩精品| 日韩在线视频播放免费视频完整版 | 亚洲AV无码之日韩精品| 久久精品一区二区三区日韩| 国产精品国产香蕉在线观看网| 精品久久久久久无码人妻中文字幕 | 四虎成人精品无码永久在线| 国产精品无码亚洲精品2021 | 亚洲精品一卡2卡3卡四卡乱码| 精品免费久久久久久久| 1024你懂的国产精品| 91精品国产免费久久国语麻豆| 久久夜色精品国产噜噜噜亚洲AV| 久久老子午夜精品无码 | 国产精品久久现线拍久青草| 日韩国产精品99久久久久久| 99er热精品视频| 国产美女在线精品免费观看| 久久这里只有精品国产免费10| 糖心vlog精品一区二区三区| 久久99热久久99精品| 免费看国产精品3a黄的视频| 国产成人精品久久亚洲高清不卡| 亚洲A∨精品一区二区三区下载| 亚洲av午夜国产精品无码中文字 | 久久久精品天堂无码中文字幕 | 亚洲精品午夜国产VA久久成人 | 国产av一区最新精品| 精品日产一卡2卡三卡4卡自拍| 久久久精品天堂无码中文字幕| 欧美激情国产精品视频一区二区| 最新国语自产精品视频在| 97超碰精品成人国产| 无码国产69精品久久久久孕妇| 国产精品jizz在线观看网站|