代码改变世界

随笔档案-2019年09月

设计模式 -- 访问者

2019-09-29 09:58 by qgbo, 139 阅读, 收藏, 编辑
摘要: 要有2个对象:接待者和访问者。 访问者是来获取接待者的信息的。 访问者可以访问很多个接待者,这些访问方法在他内部实现。 接待者有一些属性,提供一个accept 方法,这个方法基本是一句话, 访问者模式,新增访问者很方便。访问者要实现很多visitor 方法。 阅读全文

typescript 枚举

2019-09-27 14:36 by qgbo, 431 阅读, 收藏, 编辑
摘要: 枚举上可以加装饰器来像C# 那样获取描述吗?可以暂时用这种类来代替枚举。 C# 写下面的代码可以生成枚举列表: 会生成这样的东西:这个用来展示前端的下拉列表。至于枚举可以拷到前端来。 阅读全文

Swagger 实践 <二>

2019-09-26 16:59 by qgbo, 460 阅读, 收藏, 编辑
摘要: 1. 新建.netCore WebApi 项目(选择Angular)。按照上一篇的加上Swage 文档,使http://localhost:11934/swagger/v1/swagger.json 可以访问。 2.新建 一个文件夹nswag,里面有3个文件 { "runtime": "Defaul 阅读全文

eventFlow 系列 <三> 查询所有

2019-09-25 10:36 by qgbo, 223 阅读, 收藏, 编辑
摘要: 接着上面的例子,产生2条数据。怎么把这两条数据查询出来呢? 这要添加下面这2个类。查询需要在加粗的地方修改逻辑。 上端调用的代码: 阅读全文

eventFlow 系列 <二> 领域事件

2019-09-24 14:04 by qgbo, 235 阅读, 收藏, 编辑
摘要: 看一个聚合根: 实现了IEmit 接口,那么 Emit(new ExampleEvent(magicNumber, n)); 这句话执行的时候,就会触发领域事件的执行。 这个Emit 是AggregateRoot 的方法。在AggregateRoot 的Emit 方法中,调用apply 方法。 下面 阅读全文

eventFlow 系列 <一> 入门

2019-09-24 11:10 by qgbo, 321 阅读, 收藏, 编辑
摘要: 这是最简单的测试。先是创建一个命令。创建命令没执行什么关键代码,命令有个身份,唯一标识,这个标识是exampleId 这个方法中 AggregateStore.cs AggregateRoot.cs 在这个方法中,会有选择保存在内存,SQLserver,Mongo中等地方。 保存完了,以后使用的时候 阅读全文

Jenkins

2019-09-21 17:12 by qgbo, 136 阅读, 收藏, 编辑
摘要: 1. Docker 启动:docker run -p 8080:8080 -p 50000:50000 -v jenkins_home:/var/jenkins_home jenkins/jenkins:lts 在启动的输出信息中找到密码。在http://localhost:8080/ 界面上输入密 阅读全文

.net Core CLR

2019-09-20 09:11 by qgbo, 1331 阅读, 收藏, 编辑
摘要: .net Core CLR是开源的。大部分文件是C++写成。这样他就可以编译后再不同的平台运行。 https://github.com/dotnet/coreclr. 一些基础概念的理解: 1.IL 是中间语言,是高级语言,不能一句一句执行的,要有上下文,解析的CLR 大概和Python 的解释器相 阅读全文

设计模式 -- 工厂

2019-09-19 16:02 by qgbo, 124 阅读, 收藏, 编辑
摘要: 工厂可以屏蔽产品的创建细节。用户买汽车,只关心汽车能开就好,不关心汽车怎么生产的。 1.简单工厂,就是有一个工厂,给一个需求(参数),就做一个产品,这个工厂太强大了。什么都做。 2.工厂方法是简单工厂的 拆分。有汽车工厂,自行车工厂。他们只生产一种产品。 3.抽象工厂,是好多个工厂,都生产这几个产品 阅读全文

Swagger 实践 <一>

2019-09-19 09:17 by qgbo, 618 阅读, 收藏, 编辑
摘要: 参考 :https://docs.microsoft.com/zh-cn/aspnet/core/tutorials/getting-started-with-nswag?view=aspnetcore-2.2&tabs=visual-studio 1. 新建。net core 的webapi 项目 阅读全文

windows 安装K8s 简易教程

2019-09-16 17:18 by qgbo, 4019 阅读, 收藏, 编辑
摘要: 1. 先安装 chocolatey https://chocolatey.org/install administrator 运行 命令: @"%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe" -NoProfile -Input 阅读全文

设计模式 -- MVC

2019-09-16 09:17 by qgbo, 113 阅读, 收藏, 编辑
摘要: MVC 在Web中应用是常见的了,成为基础应用模式。 不好的用法是把业务写在C 中,M只是失血模型。 应该要重M 轻C,业务写在M中,但是这样有问题了。View 会引用Model,那么View会看到Model 的方法,这可不是好现象。 其实只用把View 的方法 写成Pravite 的就可以避免这个 阅读全文

代理模式

2019-09-13 18:58 by qgbo, 232 阅读, 收藏, 编辑
摘要: WCF 中用到代理了? 客户端是这个样子:父类也贴出来了 // // 摘要: // 提供基实现,用于创建可调用服务的 Windows Communication Foundation (WCF) 客户端对象。 // // 类型参数: // TChannel: // 用于连接服务的通道。 public 阅读全文

设计模式 -- 装饰器

2019-09-13 12:44 by qgbo, 106 阅读, 收藏, 编辑
摘要: 装饰器模式的核心是有继承有组合,继承和组合的抽象类还是一个! 用起来就是一层层的嵌套: 能不能链式写呢? 这样就可以链式了! 阅读全文

Docker 启动 Mongo

2019-09-13 09:49 by qgbo, 2826 阅读, 收藏, 编辑
摘要: 参考:https://hub.docker.com/_/mongo 1,运行这个 阅读全文

Docker 杂记

2019-09-12 21:43 by qgbo, 126 阅读, 收藏, 编辑
摘要: 1.配置阿里云加速 ;可以找到各种加速URL。比如 https://tnxkcso1.mirror.aliyuncs.com/ 2.windows 配置: 3.docker info可以看到新的配置已经起效了。下载速度变快 阅读全文

设计模式风格<二>;消息总线

2019-09-12 14:31 by qgbo, 500 阅读, 收藏, 编辑
摘要: 以前开发的动车模拟驾驶系统,有好几个软件(不在一台机器上),他们互相之间通信,因此每个软件要配置每个模块的IP和端口,就是每个模块都要知道别的模块的端口和IP。 这样有个重复的地方,B模块和C模块都要配置相同的A模块的信息,B和C的配置不就重复了吗?能不能只配置一个地方就可以了? 一个方法是,有一台 阅读全文

EFcore的 基础理解<三> 多对多,唯一约束

2019-09-10 18:51 by qgbo, 1290 阅读, 收藏, 编辑
摘要: 唯一约束,替代键。 多对多,可以直接建立,在上层调用的时候比较方便。 阅读全文

EFcore的 基础理解<二> shadow 特性

2019-09-10 18:04 by qgbo, 262 阅读, 收藏, 编辑
摘要: 接着上一篇。在MyEFTestContext 类中添加这个方法 执行add-migration 之后,会有迁移文件生成 可以看到,update-database 之后,会在数据库中添加一个字段,但是不会EF 一般用的时候,不会访问到。 阅读全文

EFcore的 基础理解<一>

2019-09-10 14:08 by qgbo, 357 阅读, 收藏, 编辑
摘要: 1.新建.netCore Web项目。这时候,还与EF没啥关系。 2.然后添加类 Bolg.和 Post 参考这里 https://docs.microsoft.com/en-us/ef/core/modeling/relational/fk-constraints 3.新增控制器Blogs。使用 阅读全文

.net core 依赖注入在特性中的应用

2019-09-09 17:40 by qgbo, 631 阅读, 收藏, 编辑
摘要: .net core 依赖注入在特性中的应用,不知道怎么用属性注入,那么在特性中的构造函数里,怎么用接口的方法呢? 来一个简单的例子: 主要思路是把ServiceProvider 静态全局化: public class Program { public static ServiceProvider s 阅读全文

设计模式风格<一>;回调风格

2019-09-08 12:13 by qgbo, 217 阅读, 收藏, 编辑
摘要: 主程序,是一个人,有一个类是同事: 这体现了,你中有我,我中有你的回调风格 阅读全文

设计模式--行为型

2019-09-07 22:57 by qgbo, 110 阅读, 收藏, 编辑
摘要: 设计模式 行为行设计模式关注行为的分离。 有时候把一个任务拆分成几个子任务,用以分布式集群。 有些设计模式也是这样。 比如命令模式。最简单的通信是说话,我说了,对方听到回复。 但是如果离得远了,听不清,需要写信。还需要邮递员。这里信就是命令,里面有内容。 在ues case 中,命令有很多种。发送者 阅读全文

async/await 的引用

2019-09-05 17:32 by qgbo, 816 阅读, 收藏, 编辑
摘要: 1.async await 在桌面程序和 服務程序处理不一样:桌面程序 await 后面,默认是还给UI线程的。服务端程序是线程池随机选取的,大概率另外的线程,可以通过.ConfigureAwait(false) 来配置。 以下的桌面程序,会死锁。除非在14 行加上 .ConfigureAwait( 阅读全文
点击右上角即可分享
微信分享提示