生活的这部分
以我现在的能力,也只能用这种方式帮你了,你要少忧伤几次,我这老骨头已经不起酗酒了。
没种仪表工厂都实现了生产仪表的接口,不同的工厂生产不同仪表
1 | namespace DesignPatterns.FactoryBase |
1 | using System; |
1 | using System; |
1 | using DesignPatterns.FactoryBase; |
1 | using DesignPatterns.FactoryBase; |
1 | using DesignPatterns.FactoryBase; |
1 | IMeterFactory meterAFactory = new MeterAFactory(); |
Out:1
2Type A
Type B
通过享元模式获取仪表对象
1 | namespace DesignPatterns.Flyweight |
1 | namespace DesignPatterns.Flyweight |
1 | namespace DesignPatterns.Flyweight |
1 | namespace DesignPatterns.Flyweight |
1 | FlyweightFactory factory = new FlyweightFactory(); |
1 | in MeterFlyweight, id: 1 |
实现迭代器模式,迭代仪表集合
1 | namespace DesignPatterns.Iterator |
1 | namespace DesignPatterns.Iterator |
1 | namespace DesignPatterns.Iterator |
1 | namespace DesignPatterns.Iterator |
1 | namespace DesignPatterns.Iterator |
1 | Iterator.Meter meter1 = new Iterator.Meter(1); |
Out:1
2
3
4
5MeterId: 1
MeterId: 2
MeterId: 3
MeterId: 4
MeterId: 5
不同设备对象间通信
1 | namespace DesignPatterns.Mediator |
1 | namespace DesignPatterns.Mediator |
1 | namespace DesignPatterns.Mediator |
1 | namespace DesignPatterns.Mediator |
1 | namespace DesignPatterns.Mediator |
1 | Mediator.Mediator mediator = new Mediator.Mediator(); |
Out:1
2Get message in B: 发送消息
Get message in A: 发送消息
备忘配置文件,实现配置文件的撤销和重做操作
1 | namespace DesignPatterns.Memento |
1 | namespace DesignPatterns.Memento |
1 | namespace DesignPatterns.Memento |
1 | namespace DesignPatterns.Memento |
1 | Original original = new Original(); |
Out:1
2
3
4
5
6
7
8
9
10
11
12
13
14Ip: 192.168.1.1, Port: 3000
Ip: 192.168.2.1, Port: 1000
Ip: 192.168.1.2, Port: 6000
Ip: 192.168.1.1, Port: 5000
---------------------
Ip: 192.168.1.2, Port: 6000
Ip: 192.168.2.1, Port: 1000
Ip: 192.168.1.1, Port: 3000
Ip: 192.168.1.127, Port: 5000
----------------
Ip: 192.168.1.1, Port: 3000
Ip: 192.168.2.1, Port: 1000
Ip: 192.168.1.2, Port: 6000
Ip: 192.168.1.1, Port: 5000
实现仪表时间的同步
1 | namespace DesignPatterns.Observer |
1 | namespace DesignPatterns.Observer |
1 | namespace DesignPatterns.Observer |
1 | namespace DesignPatterns.Observer |
1 | namespace DesignPatterns.Observer |
1 | ITimeSynchronizer timeSynchronizer = new TimeSynchronizer(); |
Out:1
2
3
4
5
6
7同步时间
同步时间
同步时间
同步时间
同步时间
同步时间
同步时间
全局配置文件
1 | namespace DesignPatterns.Singleton |
1 | namespace DesignPatterns.Singleton |
1 | var config = ConfigSingleton.GetInstance().ServerConfig; |
Out:1
2127.0.0.1
8000
公司实现标准读卡器接口读卡,第三方读卡器实现其他接口,使用适配器适配第三方读卡器。
1 | namespace DesignPatterns.Adpater |
1 | namespace DesignPatterns.Adpater |
1 | namespace DesignPatterns.Adpater |
1 | namespace DesignPatterns.Adpater |
1 | Adpater.ICardReader cardReader = new OtherCardReaderAdpater(new OtherCardReader()); |
Out:1
read from Other
在发送数据前和发送数据后调用方法
1 | namespace DesignPatterns.Proxy |
1 | namespace DesignPatterns.Proxy |
1 | namespace DesignPatterns.Proxy |
1 | ISender sender = new SenderProxy(); |
1 | The id of meter is 1 |
tag:
缺失模块。
1、请确保node版本大于6.2
2、在博客根目录(注意不是yilia根目录)执行以下命令:
npm i hexo-generator-json-content --save
3、在根目录_config.yml里添加配置:
jsonContent: meta: false pages: false posts: title: true date: true path: true text: false raw: false content: false slug: false updated: false comments: false link: false permalink: false excerpt: false categories: false tags: true