美文网首页
Android Kotlin 设计模式之建造者模式

Android Kotlin 设计模式之建造者模式

作者: 水天滑稽天照八野滑稽石 | 来源:发表于2020-01-14 10:44 被阅读0次

前言

补下坑,因为之前简书整改和一些其他原因就断更了,这次就来聊聊建造者

工厂模式与建造者模式的差别

因为这2个还是挺相似的,都是生成一个我们想要的东西,所以还是得说清楚的:
工厂模式:直接生成一个可用的产品

// 如bitmapFactory
val bitmap = BitmapFactory.decodeFile(filePath)b

建造者模式:配置相关参数生成一个我们想要的产品

//如AlertDialog
 val builder = AlertDialog.Builder(this)
 val dialog = builder.setTitle(xxxx)
            .setIcon(xxxx)
            .setIcon(XXX)
            .setXXX(xxx)
            .create()
            .show()

正文

对于建造者模式来说,写法上主要表现就是链式反应的写法
这儿我们同样以生成一个实体类为例(一个学生)

class Student{
        private var name = ""
        private var age = 0

        fun setName(name: String): Student {
            this.name = name
            return this
        }

        //链式反应就是return this 就好了
        fun setAge(age: Int): Student {
            this.age = age
            return this
        }
    }

//使用
 val student = Student()
            .setAge(11)
            .setName("XXX")
//当然也可以这样写
class Student private constructor(){

    private lateinit var name: String
    private var age by Delegates.notNull<Int>()
    
    companion object {
        fun builder(): Builder {
            return Builder()
        }
    }

    class Builder{

        private val student = Student()

        fun setName(name: String): Builder {
            student.name = name
            return this
        }

        fun setAge(age: Int): Builder {
            student.age = age
            return this
        }

        fun build(): Student {
            return student
        }
    }

}
// 使用
  val student = Student
                .builder()
                .setAge(10)
                .setName("xiao")
                .build()

总结

反正对于建造者模式来说,核心的写法就是同过链式反应配置不同的参数生成我们想要的东西

相关文章

  • Android Kotlin 设计模式之建造者模式

    前言 补下坑,因为之前简书整改和一些其他原因就断更了,这次就来聊聊建造者 工厂模式与建造者模式的差别 因为这2个还...

  • 建造者模式(Builder 模式)

    Android进阶之设计模式 建造者模式( Builder 模式) 定义:将一个复杂对象的构建与它的表示分离,使得...

  • Android中涉及的模式

    我的Java设计模式-建造者模式 我的Java设计模式-观察者模式 重学设计模式之单例模式

  • 设计模式之建造者模式

    设计模式之建造者模式 Intro 简介 建造者模式: 建造者模式隐藏了复杂对象的创建过程,它把复杂对象的创建过程加...

  • 设计模式之建造者模式

    设计模式之建造者模式 1. 模式定义 建造者模式又可以成为生成器模式,它属于对象创建型模式。建造者模式将一个复杂对...

  • 建造者模式(部件构造)

    目录 建造者模式的理念 从 POJO 到建造者模式的思考 怎么来实现建造者模式 建造者模式在Android源码中的...

  • Javaの设计模式之建造者模式

    推荐阅读:《设计模式之禅》 今早早起,刚刚出炉,哈哈 BuilderPattern 设计模式之建造者模式 Demo...

  • Android设计模式之建造者模式

    建造者模式 1.定义: 将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建出不同的表示。 2.使用场景...

  • 设计模式之建造者模式

    设计模式之建造者模式 建造者模式 属于 创建型模式,提供一种创建对象的最佳方式。 创建型模式 指不是直接使用ne...

  • Android 设计模式之简单工厂模式

    设计模式系列文章 Android 设计模式之单例模式 Android 设计模式之Builder模式 Android...

网友评论

      本文标题:Android Kotlin 设计模式之建造者模式

      本文链接:https://www.haomeiwen.com/subject/uibtnqtx.html