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

      百恒網絡

      南昌百恒網絡

      IOS開發之采用純Objective-C語言實現POOO模式

      百恒網絡 2017-06-03 5044

      在IOS開發中用純Objective-C語言實現的分層架構如圖1所示。之前也介紹過MyNotes工程,如圖2所示。在Xcode工程導航面板中,共有3個組,這類似于圖上一節介紹的純Swift語言實現的工程。

      使純Objective-C語言實現的分層架構圖

      純Objective-C語言實現的Xcode的工程

      下面介紹代碼部分。在dao組中,NoteDAO.h的代碼如下:

      @interface NoteDAO : NSObject

      //保存數據列表

      @property (nonatomic,strong) NSMutableArray* listData;

      + (NoteDAO*)sharedManager;

      //插入備忘錄的方法

      -(int) create:(Note*)model;

      //刪除備忘錄的方法

      -(int) remove:(Note*)model;

      //修改備忘錄的方法

      -(int) modify:(Note*)model;

      //查詢所有數據的方法

      -(NSMutableArray*) findAll;

      //按照主鍵查詢數據的方法

      -(Note*) findById:(Note*)model;

      @end

      在上述代碼中,listData屬性用于保存數據表中的數據,其中每一個元素都是Note對象。+ (NoteDAO*) sharedManager方法用于獲得NoteDAO單例對象。在dao組中,NoteDAO.m的代碼如下:

      在dao組中,NoteDAO.m的代碼一

      在dao組中,NoteDAO.m的代碼二

      NoteDAO也采用了單例設計模式來實現。

      在domain組中,Note的代碼如下,它只有兩個屬性——date是創建備忘錄的日期,content是備忘錄的內容:

      //

      //Note.h

      //

      #import

      @interface Note : NSObject

      @property(nonatomic, strong) NSDate* date;

      @property(nonatomic, strong) NSString* content;

      @end

      //

      //Note.m

      //

      #import "Note.h"

      @implementation Note

      @end

      在業務邏輯層BusinessLogicLayer中,NoteBL.h的代碼如下:

      @interface NoteBL : NSObject

      //插入備忘錄的方法

      -(NSMutableArray*) createNote:(Note*)model;

      //刪除備忘錄的方法

      -(NSMutableArray*) remove:(Note*)model;

      //查詢所有數據的方法

      -(NSMutableArray*) findAll;

      @end

      下面是NoteBL.m中的代碼:

      @implementation NoteBL

      //插入備忘錄的方法

      -(NSMutableArray*) createNote:(Note*)model

      {

      NoteDAO *dao = [NoteDAO sharedManager];

      [dao create:model];

      return [dao findAll];

      }

      //刪除備忘錄的方法

      -(NSMutableArray*) remove:(Note*)model

      {

      NoteDAO *dao = [NoteDAO sharedManager];

      [dao remove:model];

      return [dao findAll];

      }

      //查詢所有數據的方法

      -(NSMutableArray*) findAll

      {

      NoteDAO *dao = [NoteDAO sharedManager];

      return [dao findAll];

      }

      @end

      PresentationLayer是表示層,其中的內容大家應該比較熟悉了,南昌APP開發公司-百恒網絡在這里就不再多說了,想了解更多關于這方面的知識的朋友,隨時歡迎您來電和我們聯系,本公司專注于南昌APP開發具有十多年的豐富經驗,如有需要,百恒隨時為您服務!


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

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

      售前咨詢 售前咨詢
       
      售前咨詢 售前咨詢
       
      售前咨詢 售前咨詢
       
      售前咨詢 售前咨詢
       
      售前咨詢 售前咨詢
       
      售后服務 售后服務
       
      售后服務 售后服務
       
      備案專線 備案專線
       
      ×
      免费精品一区二区三区在线观看| 久久精品中文騷妇女内射| 日韩精品在线一区二区| 久久久久国产精品免费免费搜索| 久久无码专区国产精品发布| 亚洲国产精品一区二区第一页 | 男人扒开女人下添高潮日韩视频| 九九精品久久久久久噜噜| 久久狠狠高潮亚洲精品| 久久精品亚洲综合专区| 国产亚洲精品美女久久久| 久久精品国产清自在天天线| 亚洲精品NV久久久久久久久久| 精品日韩亚洲AV无码一区二区三区| 国产精品国产三级国产av剧情| 精品久久久久久久久亚洲偷窥女厕 | 国产精品一二二区| 久久亚洲精品无码aⅴ大香| 久久丫精品久久丫| 91精品国产免费久久久久久青草| 国产99精品一区二区三区免费| 日韩在线观看高清视频| 四虎AV永久在线精品免费观看| 精品国产18久久久久久| 久热爱精品视频在线 | 精品在线免费视频| 中文字幕av日韩精品一区二区| 国产av永久精品无码| 国产精品久久久久国产精品三级 | 国产成人精品无码专区| 国产精品国产三级国产普通话a| 国产精品无码素人福利免费 | 99久久精品国产高清一区二区 | 久久精品中文字幕大胸| 国产精品福利在线播放| 99久热任我爽精品视频| 国产精品毛片久久久久久久| 国产精品成人不卡在线观看| 国产精品久久久久久福利漫画| 最新国产成人亚洲精品影院| 精品动漫一区二区无遮挡|