创建型模式-对象模版

使用场景:数据model的创建

意义:

1、避免直接取字典、JSON等集合类型里的数据。一个是因为数据集合里面的数据类型不清楚,另一个是数据变动,对使用者不友好。

2、避免暴露数据处理的细节。数据处理细节暴露过多,散落的代码不容易管理,耦合性高。

简单的使用对比:

使用前

 var products = [
    ("Kayak","A boat for one person","Watersports",275.0,10),
    ("Lifejecket","Protective and fashionable","Watersports",48.95,14)]

使用后

var products = [

    Product.init(name: "Kayak",
                 description: "A boat for one person",
                 category: "Watersports",
                 price: 275.0,
                 stockLevel: 10),
    
    Product.init(name: "Lifejecket",
                 description: "Protective and fashionable",
                 category: "Watersports",
                 price: 48.95,
                 stockLevel: 14)]
Demo

这个比较简单,就写的很少。主要是跟随Swift版本的设计模式来的,一方面学习Swift,一方面学习设计模式。环境是macos10.12iOS10.2,低于这个版本,storyboard会打不开。

有一个示例程序ObjectTemplate。还有一个不断叠加设计模式的主工程SportsStoreDemo,涉及到的类有Product.swift
demo

写在后面:

我写的关于设计模式内容,都是来自书《精通Swift设计模式》,如果有兴趣可以直接买来看看,不用看我的"歪曲理解"。我只是一个搬运工,记录过程,记录一点浅显的理解🙏。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容