04 2020 档案
摘要:使用Stream的好处 避免占内存较大的(字符串)中间变量的使用 实现 Get Post
阅读全文
摘要:full update 与 partial update partial update:发送需要对远程资源做的变更(集合) full update:发送变更后的资源实体 Json Patch Json Patch 是描述一个json文档的变化的一种格式。可以避免在文档的一部分发生变化时发送整个文档。
阅读全文
摘要:Get 请求 局部使用自定义请求头 Post 请求 简洁方式 HttpRequestMessage 方式
阅读全文
摘要:为什么需要封装 值对象的属性需要同时满足某些条件保证值对象数据的一致性,这些属性同时被传递(作为参数) 示例 很多场景下都会用到的开始、结束时间,两个时间必须不能为空,而且这两个时间一般同时做为参数传递 将这两个属性放到一个值对象中,让它们同时变化与维护自身逻辑,与系统其它部分解耦 代码实现 当我们
阅读全文
摘要:IReadOnlyCollection 接口 表示一个强类型的、只读的元素的集合 此接口没有定义集合操作的Add方法、索引器因此无法对集合元素进行增加和修改。 常见的List、Dictionary、Queue、Stack都实现了此接口 使用IReadOnlyCollection实现集合的只读 以上只
阅读全文
摘要:定义 将一个类的接口,转换成客户期望的另一个接口。适配器让原本接口不兼容的类可以合作无间。 UML 类图 实现 场景: 你有一个绘制柱状图组件,其他组件(客户)调用该组件完成柱状图的显示,有一天你希望使用功能更加丰富的的第三方图表组件,而第三方的图表组件API与你自己的柱状图组件不太相同,这时候可以
阅读全文
摘要:定义 在一个方法中定义一个算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以在不改变算法结构的情况下,重新定义算法中的某些步骤。 UML类图 实现 案例:以前后端开发流程为例, 得到需求 打开工具编写代码 测试 抽象开发类 前端开发类 后端开发类 抽象父类中的SolveProblems方法为
阅读全文
摘要:定义 每个模块只应该了解那些与它关系密切的模块的有限知识,或者说每个模块只和自己的朋友“说话”,不和陌生人“说话”。 如果把定义中的模块理解为类,则可以这样理解定义: 不该有直接依赖关系的类之间,不要有依赖,有依赖关系的类之间,尽量只依赖必要的接口 如何做到最少知识 对于任何对象而言,在该对象的方法
阅读全文

浙公网安备 33010602011771号