你好,歡迎來到IOS教程網

 Ios教程網 >> IOS編程開發 >> IOS開發基礎 >> iOS 用10行代碼實現購物車緩存

iOS 用10行代碼實現購物車緩存

編輯:IOS開發基礎

pexels-photo-26799-medium.jpg

需求:
1.購物車緩存商品勾選數量.(這一個需求當然也是我自己加的...).

限制:
1.時間不允許采用數據庫,或者其他持久化方式(當然是我懶...).

實現:
接下來 貼出要使用到的演示代碼,和實現代碼.


這裡調用我傳入的是 &data 因為&是取地址嘛,具體傳&標示什麼意思有不明白的可以回去讀讀C我在這就不過多解釋了,不是主題.(其實我也說不明白!).


這裡是關鍵的實現部分了.

原理:
實現原理其實特別簡單,從前有一個單例, 單例裡面有一個

NSMutableDictionary
這個 NSMutableDictionary 就是我們用來做緩存的工具,其實我有試過NSCache為什麼用這個?(可能是用這個看起來比較牛逼).
但是NSCache 雖然會有一些好處,但是給我項目帶來的弊端也是明顯的,它是apple提供的緩存策略,可以限制緩存 數量,或者限制緩存的 容量.但是如果限制了,在內存較高的時候釋放一部分緩存.當前控制器如果還在引用此緩存當中的對象 那麼對象已經被釋放了,所以很結果尴尬了.(當然這個問題是可以解決的,暫時先不去管它).因為 其實他們使用起來都是差不多的,原理也類似.

真正的原理:
1.第一次請求數據,緩存到 cache 中,然後每次我們增加某一個商品數量,其實修改的是cache當中單條數據的數量.
2.第二次請求數據,去Cache 中查找是否存在此次緩存,如果存在,那麼替換當前請求的返回數據,(當然這裡可以直接獲取緩存數據,網絡請求都不用跑了.真是牛逼,流量都省了.真是個天才).
3.第三次請求數據,去Cache中查找數據,如果不存在 那麼-> 1步.

其實真正起作用的代碼不到10行,原理非常簡單,會iOS 的都能讀懂.

轉載請注明出處,喜歡請給我個星,鼓勵我繼續研究奇淫技巧.!
如果有新的好點子,改進歡迎指正.交流技術,分享裝13技巧.

  1. 上一頁:
  2. 下一頁:
蘋果刷機越獄教程| IOS教程問題解答| IOS技巧綜合| IOS7技巧| IOS8教程
Copyright © Ios教程網 All Rights Reserved