一种移动端iOS开发数据转模型的方法技术

技术编号:35646158 阅读:19 留言:0更新日期:2022-11-19 16:39
本发明专利技术提供了一种移动端iOS开发数据转模型的方法,涉及互联网技术领域,该方法包括:S1、创建基类NSObject的分类Category文件NSObject+JSONModel;S2、通过所述分类文件NSObject+JSONModel,完成JSON数据转换成模型Model相关方法的声明;S3、通过所述分类文件NSObject+JSONModel,完成关键字的替换以及数组类模型的替换方法在实现类区间的定义和实现;S4、通过所述字典转模型方法+(instancetype)modelWi thDict:(NSDictionary*)dict的声明和定义,前往实现字典转模型;S5、通过所述字典数组转模型数组类方法+(NSArray*)modelWi thArray:(NSArray*)array的声明和定义,前往实现字典数组转模型数组;S6、完成字典转模型和字典数组转模型数组功能的封装,对不同的业务场景创建不同的业务模型类名字,并对需要用到的业务参数进行属性声明,再进行调用和解析。再进行调用和解析。再进行调用和解析。

【技术实现步骤摘要】
一种移动端iOS开发数据转模型的方法


[0001]本专利技术涉及互联网
,具体的,本专利技术涉及一种移动端iOS开发数据转模型的方法。

技术介绍

[0002]解析服务器后端返回的JSON数据时,往往通过字典的键值对来读取解析,而键值key的书写不能通过编辑器来检测语法,因此,当键值key写错时,不能通过编辑器的编译发现,如此情形下的解析数据编写出错,对开发人员来说不易发现,因此,在每次需要用到时都需要确保键值的输入正确,导致开发速度相对缓慢。
[0003]因此需要一种移动端iOS开发效率更高并且可以避免书写错误无法及时发现的方案。

技术实现思路

[0004]为了克服现有技术的不足,本专利技术提供了一种移动端iOS开发数据转模型的方法,以解决上述的技术问题。
[0005]本专利技术解决其技术问题所采用的技术方法是:一种移动端iOS开发数据转模型的方法,其改进之处在于:包括以下的步骤:S1、创建基类NSObject的分类Category文件NSObject+JSONModel;S2、通过所述分类文件NSObject+JSONModel,完成JSON数据转换成模型Model相关方法的声明,完成字典转模型方法+(instancetype)modelWithDict:(NSDictionary*)dict和字典数组转模型数组类方法+(NSArray*)modelWithArray:(NSArray*)array在实现区间的定义;S3、通过所述分类文件NSObject+JSONModel,完成关键字的替换以及数组类模型的替换方法在实现类区间的定义和实现;S4、通过所述字典转模型方法+(instancetype)modelWithDict:(NSDictionary*)dict的声明和定义,前往实现字典转模型;S5、通过所述字典数组转模型数组类方法+(NSArray*)modelWithArray:(NSArray*)array的声明和定义,前往实现字典数组转模型数组;S6、完成字典转模型和字典数组转模型数组功能的封装,对不同的业务场景创建不同的业务模型类名字,并对需要用到的业务参数进行属性声明,再进行调用和解析。
[0006]在上述方法中,所述步骤S1,包括以下的步骤:
[0007]S11、通过开发工具Xcode编辑器,右键选择新建文件操作New File新建文件,在弹出的文件类型选项中选择文件类型Object

C File;
[0008]S12、在弹出的弹窗选项中编辑,选择文件类型File Type为分类Category,选择需要创建分类的类名类型Class为基类NSObject,并将创建的分类Category文件File命名为JSONModel,点击完成可得到基类NSObject的分类文件NSObject+JSONModel,用于实现JSON数据转换成模型对象的功能。
[0009]在上述方法中,所述步骤S2,包括以下的步骤:
[0010]S21、前往所述分类文件件NSObject+JSONModel的声明类NSObject+JSONModel.h
的声明区间@interface,声明字典转模型方法+(instancetype)modelWithDict:(NSDictionary*)dict,将该方法公开给外部调用;
[0011]S22、前往所述分类文件NSObject+JSONModel的实现类NSObject+JSONModel.m的实现区间@implementation,完成字典转模型实例方法+(instancetype)modelWithDict:(NSDictionary*)dict在实现区间的定义;
[0012]S23、前往所述分类文件NSObject+JSONModel的声明类NSObject+JSONModel.h的声明区间@interface,声明字典数组转模型数组类方法+(NSArray*)modelWithArray:(NSArray*)array,将该方法公开给外部调用;
[0013]S24、前往所述分类文件NSObject+JSONModel的实现类NSObject+JSONModel.m的实现区间@implementation,完成字典数组转模型数组类方法+(NSArray*)modelWithArray:(NSArray*)array在实现区间的定义。
[0014]在上述方法中,所述步骤S3,包括以下的步骤:
[0015]S31、前往所述分类文件NSObject+JSONModel的实现类NSObject+JSONModel.m的实现区间@implementation,完成关键字参数替换方法+(NSDictionary*)replacedKeyFromPropertyName的定义;
[0016]S32、前往所述分类文件NSObject+JSONModel的实现类NSObject+JSONModel.m的实现区间@implementation,完成数组类模型替换方法+(NSDictionary*)objectClassInArray的定义。
[0017]在上述方法中,所述步骤S31中,通过返回一个空字典@{},实现关键字参数替换方法replacedKeyFromPropertyName。
[0018]在上述方法中,所述步骤S32中,通过返回一个空字典@{},实现数组类模型替换方法objectClassInArray。
[0019]在上述方法中,所述步骤S4,包括以下的步骤:
[0020]S41、前往所述分类文件NSObject+JSONModel的实现类NSObject+JSONModel.m,通过模块引入方法#import引入开发语言Object

C的运行时库#import<objc/runtime.h>;
[0021]S42、判断所述字典转模型方法+(instancetype)modelWithDict:(NSDictionary*)dict传进来的需要转换成模型的数据dict是否为空,若是,则直接返回一个空nil,若不是,则跳转至步骤S43;
[0022]S43、通过运行时获取类声明的实例变量方法class_copyIvarList,得到调用字典转模型方法的Model类里的所有实例变量ivarList;
[0023]S44、通过循环方法for(int i=0;i<count;i++)循环遍历实例变量ivarList;
[0024]S45、通过实例变量ivarList数组下标i获取该下标对应的实例ivar,通过获取实例变量名的C字符串方法ivar_getName获取该实例ivar实例变量的名称ivarName,通过获取实例变量类型编码的C字符串获取该实例变量ivar实例变量的类型ivarType,并将所述的实例变量名称ivarName和实例变量类型ivarType本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种移动端iOS开发数据转模型的方法,其特征在于:包括以下的步骤:S1、创建基类NSObject的分类Category文件NSObject+JSONModel;S2、通过所述分类文件NSObject+JSONModel,完成JSON数据转换成模型Model相关方法的声明,完成字典转模型方法+(instancetype)modelWithDict:(NSDictionary*)dict和字典数组转模型数组类方法+(NSArray*)modelWithArray:(NSArray*)array在实现区间的定义;S3、通过所述分类文件NSObject+JSONModel,完成关键字的替换以及数组类模型的替换方法在实现类区间的定义和实现;S4、通过所述字典转模型方法+(instancetype)modelWithDict:(NSDictionary*)dict的声明和定义,前往实现字典转模型;S5、通过所述字典数组转模型数组类方法+(NSArray*)modelWithArray:(NSArray*)array的声明和定义,前往实现字典数组转模型数组;S6、完成字典转模型和字典数组转模型数组功能的封装,对不同的业务场景创建不同的业务模型类名字,并对需要用到的业务参数进行属性声明,再进行调用和解析。2.如权利要求1所述的一种移动端iOS开发数据转模型的方法,其特征在于:所述步骤S1,包括以下的步骤:S11、通过开发工具Xcode编辑器,右键选择新建文件操作New File新建文件,在弹出的文件类型选项中选择文件类型Object

C File;S12、在弹出的弹窗选项中编辑,选择文件类型File Type为分类Category,选择需要创建分类的类名类型Class为基类NSObject,并将创建的分类Category文件File命名为JSONModel,点击完成可得到基类NSObject的分类文件NSObject+JSONModel,用于实现JSON数据转换成模型对象的功能。3.如权利要求2所述的一种移动端iOS开发数据转模型的方法,其特征在于:所述步骤S2,包括以下的步骤:S21、前往所述分类文件件NSObject+JSONModel的声明类NSObject+JSONModel.h的声明区间@interface,声明字典转模型方法+(instancetype)modelWithDict:(NSDictionary*)dict,将该方法公开给外部调用;S22、前往所述分类文件NSObject+JSONModel的实现类NSObject+JSONModel.m的实现区间@implementation,完成字典转模型实例方法+(instancetype)modelWithDict:(NSDictionary*)dict在实现区间的定义;S23、前往所述分类文件NSObject+JSONModel的声明类NSObject+JSONModel.h的声明区间@interface,声明字典数组转模型数组类方法+(NSArray*)modelWithArray:(NSArray*)array,将该方法公开给外部调用;S24、前往所述分类文件NSObject+JSONModel的实现类NSObject+JSONModel.m的实现区间@implementation,完成字典数组转模型数组类方法+(NSArray*)modelWithArray:(NSArray*)array在实现区间的定义。4.如权利要求3所述的一种移动端iOS开发数据转模型的方法,其特征在于:所述步骤S3,包括以下的步骤:S31、前往所述分类文件NSObject+JSONModel的实现类NSObject+JSONModel.m的实现
区间@implementation,完成关键字参数替换方法+(NSDictionary*)replacedKeyFromPropertyName的定义;S32、前往所述分类文件NSObject+JSONModel的实现类NSObject+JSONModel.m的实现区间@implementation,完成数组类模型替换方法+(NSDictionary*)objectClassInArray的定义。5.如权利要求4所述的一种移动端iOS开发数据转模型的方法,其特征在于:所述步骤S31中,通过返回一个空字典@{},实现关键字参数替换方法replacedKeyFromPropertyName。6.如权利要求5所述的一种移动端iOS开发数据转模型的方法,其特征在于:所述步骤S32中,通过返回一个空字典@{},实现数组类模型替换方法objectClassInArray。7.如权利要求6所述的一种移动端iOS开发数据转模型的方法,其特征在于:所述步骤S4,包括以下的步骤:S41、前往所述分类文件NSObject+JSONModel的实现类NSObject+JSONModel.m,通过模块引入方法#import引入开发语言Object

C的运行时库#import<objc/runtime.h>;S42、判断所述字典转模型方法+(instancetype)modelWithDict:(NSDictionary*)dict传进来的需要转换成模型的数据dict是否为空,若是,则直接返回一个空nil,若不是,则跳转至步骤S43;S43、通过运行时获取类声明的实例变量方法class_copyIvarList,得到调用字典转模型方法的Model类里的所有实例变量...

【专利技术属性】
技术研发人员:潘信璋
申请(专利权)人:银盛支付服务股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1