swift元编程初识

在开发中,会有一些重复结构的代码需要重复编写,例如使用ObjectMapper中对模型对象的定义。使用元编程,是为了对有固定规则结构特点的代码进行抽象,提取有共性的地方,使用模板的方式,让代码自动生成的一种方法。下面具体介绍Sourcery元编程工具的使用方式。

三方库名称:Sourcery
三方库地址:https://github.com/krzysztofzablocki/Sourcery

安装方式:

brew install sourcery

执行方式

./sourcery --sources  --templates  --output 

下面介绍一个简单的实际使用案例进行说明:

  1. 新建空白Xcode工程,添加AlamofireObjectMapper三方库


    image.png
  2. 测试目标json网络接口


    image.png
  3. 添加Xcode编译宏,执行sourcery生成目标代码配置


    image.png

    并在宏对应的工程目录中,创建文件夹,Model, Model/Templates, Model/AutoGenerate,和一个NotCompile文件夹


    image.png
  4. 编写stencil脚本,并放入Templates文件夹内


    image.png

    写一个空实现的脚本,作为Sourcery的标记协议用,对需要进行代码自动生成的类,去遵守这个协议


    image.png
  5. 在NotCompile中,新增AppointmentModel.swift文件,定义模型类的属性,并遵守AutoModelable协议


    image.png
  6. 编译,在AutoGenerator文件夹中,手动添加生成的AutoModelable.generated.swift文件


    image.png
  7. 测试,直接使用AppointmentModel类,也就是由代码自动生成的定义


    image.png

工程github地址:
https://github.com/linx214/SourceryTest.git

你可能感兴趣的:(swift元编程初识)