YYModel 原始碼分析

2022-09-17 06:09:08 字數 650 閱讀 3397

+ (instancetype)yy_modelwithdictionary:(nsdictionary*)dictionary

第一步: 準備_yymodelmeta 類:

分析:

1. cache快取 _yymodelmeta 類,如果乙個模型已經轉換過,就會儲存到cache裡面,如果下次遇到相同的model,就會直接從快取中取,不會重新建立,因為模型轉換頻率較高,所以優化非常有必要,體現了框架設計者的良苦用心:

2. 如果快取中沒有,meta = [[_yymodelmeta

alloc

] initwithclass:cls]; 建立_yymodelmeta類:

///returns the cached model class meta

+ (instancetype)metawithclass:(class)cls

- (instancetype)initwithclass:(class)cls

第二部: 新建cls類物件one。

第三部: 根據dictionary轉換one物件。

YYModel 原始碼分析 字典轉模型

有這麼個模型 inte ce author nsobject property nsstring name property nsstring birthday end inte ce book nsobject property nsstring name property nsuinteger ...

YYModel原始碼閱讀(一)

專案中一直在使用yymodel來進行model的轉換。自己閱讀了yymodel的原始碼,下面就從最基本的開始對yymodel進行分析。標頭檔案yymodel if has include foundation export double yymodelversionnumber foundation...

YYModel 原始碼解讀(一)之YYModel h

if has include foundation export double yymodelversionnumber foundation export const unsigned char yymodelversionstring import import else import nsob...