【Rust设计模式之建造者模式】

Rust设计模式之建造者模式


什么是建造者模式

即将结构体属性方法与构建解离,使用专门的builder进行建造,说白了就是new和其他的方法分开,集中处理更方便。


直接上代码:

rust 复制代码
#[derive(Debug)]
struct children {
    name: String,
    age: u32,
}

impl children {
    pub fn find_generator() -> Generator {
        Generator::default()
    }
}
#[derive(Default)]
struct Generator {
    name: String,
    age: u32,
    //... and so on...
}

impl Generator {
    pub fn new() -> Generator {
        Generator {
            name: String::from("generator"),
            age: 11,
            //... and so on...
        }
    }
    pub fn buildchildren(self) -> children {
        children {
            name: self.name,
            age: self.age,
            //... and so on...
        }
    }
}

fn main() {
    let child_from_generator = Generator::new().buildchildren();
    println!("{:?}", child_from_generator);
}
相关推荐
Source.Liu13 分钟前
【mdlib】0 全面介绍 mdlib - Rust 实现的 Markdown 工具集
rust·markdown
执念36520 分钟前
MySQL基础
后端
黯_森21 分钟前
Java异常机制
java·后端
A阳俊yi1 小时前
Spring Boot日志配置
java·spring boot·后端
起风了布布1 小时前
配置版本化是怎么实现的
后端
资深前端外卖员1 小时前
【nodejs高可用】前端APM应用监控方案 + 落地
前端·后端
健康的猪1 小时前
golang的cgo的一点小心得
开发语言·后端·golang
斜月1 小时前
一个服务预约系统该如何设计?
spring boot·后端
M1A11 小时前
云原生第一步:Windows Go环境极速配置
后端·go
cooldream20091 小时前
深入理解MVP架构:让UI层与业务逻辑完美分离的设计模式
ui·设计模式·架构·系统架构师