jedrek

jedrek

V2EX 第 43754 号会员,加入于 2013-08-13 02:30:18 +08:00
根据 jedrek 的设置,主题列表被隐藏
二手交易 相关的信息,包括已关闭的交易,不会被隐藏
jedrek 最近回复了
跟那个关站的多吉搜索啥关系 ?
设计模式的出现,某种程度上是针对某种某类编程语言特点或弥补它的不足,若有些编程语言没有这些问题,自不必要考虑这些设计模式,硬套只会创造本不应有的问题。

getter/setter 概念是 OOP 宗教化出现的东西,本质上控制某个属性读写权限,实际使用中也是如此。Rust 的设计没有这种将值函数化的意图,

如果你仅仅想使用 Rust 实现策略模式,可以这样写

```rust
fn main() {
Context { strategy: StrategyA }.execute();
Context { strategy: StrategyB }.execute();
}

struct Context<T: Strategy> {
strategy: T
}
impl<T: Strategy> Context<T> {
fn execute(&self) {}
}

trait Strategy {
fn do_something();
}

struct StrategyA;
struct StrategyB;

impl Strategy for StrategyA {
fn do_something() { }
}

impl Strategy for StrategyB {
fn do_something() { }
}
```
吃饭有吃饭的方式,不需要用吃屎的方式吃饭
只在上层捕获记录日志
99 天前
回复了 hzjseasea 创建的主题 Rust rust 练手项目
写个爬虫吧
诚信在这个社会几乎没用,很多时候反而被无赖利用
用 Network Extension 类型的代理可解
等哪天你不需要用拼音替代文字了,往后的房子才有可能
216 天前
回复了 GTD 创建的主题 Java jdk 8 怎么和 jdk 15.1 差距这么大?
楼主什么虚拟机软件?
不正常。只能说公司垃圾
关于   ·   帮助文档   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2381 人在线   最高记录 5497   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 15ms · UTC 14:32 · PVG 22:32 · LAX 07:32 · JFK 10:32
♥ Do have faith in what you're doing.