摘要: 1. 恒等函数 1.1. 在代数中,恒等函数指的是函数f(x) = x 1.2. 恒等逻辑与getNumbers()和assembleWidgets()的问题域解耦,因为恒等逻辑和问题域是正交的,或者说是独立的 2. 类型参数 2.1. 将不同函数的区别,即它们的实参类型参数化 2.2. 一个泛型名 阅读全文
posted @ 2023-01-17 09:08 躺柒 阅读(60) 评论(0) 推荐(0) 编辑
摘要: 1. 基本信息 C#代码整洁之道:代码重构与性能提升 ,英文名为Clean Code in C#。 作者:[英] 詹森·奥尔斯(Jason Alls) 著,刘夏 译 机械工业出版社,2022年4月出版。 1.1. 读薄率 书籍总字数489000字,笔记总字数8927字。 读薄率 8927÷48900 阅读全文
posted @ 2023-01-16 08:51 躺柒 阅读(575) 评论(0) 推荐(1) 编辑
摘要: 1. 面向对象编程 1.1. (Object-Oriented Programming,OOP) 1.2. 基于对象的概念的一种编程范式 1.3. 对象可以包含数据和代码 1.4. 数据是对象的状态 1.5. 代码是一个或多个方法 1.5.1. 消息是方法,包括名称、实参和返回类型 1.6. 通过使 阅读全文
posted @ 2023-01-15 14:03 躺柒 阅读(67) 评论(0) 推荐(0) 编辑
摘要: 1. 子类型 1.1. 在期望类型T的实例的任何地方,都可以安全地使用类型S的实例,则类型S是类型T的子类型 1.1.1. 里氏替换原则(Liskov substitution principle) 2. 名义子类型 2.1. 明确指定 2.2. 显式声明一个类型是另一个类型的子类型 2.3. 大部 阅读全文
posted @ 2023-01-14 14:32 躺柒 阅读(52) 评论(0) 推荐(0) 编辑
摘要: 1. 装饰器模式 1.1. 扩展对象的行为,而不必修改对象的类 1.2. 装饰的对象可以执行其原始实现没有提供的功能 1.3. 优势 1.3.1. 支持单一职责原则 1.3.1.1. 每个类只应该承担一种职责 1.4. 经典实现 1.4.1. 一个IComponent接口 1.4.2. 一个具体实现 阅读全文
posted @ 2023-01-13 08:35 躺柒 阅读(33) 评论(0) 推荐(0) 编辑
摘要: 1. 策略模式 1.1. 在运行时从一组算法中选择某个算法 1.1.1. 封装一组算法 1.1.2. 在运行时使用其中一个算法 1.2. 把算法与使用算法的组件解耦 1.3. 面向对象实现 1.3.1. 惯例实现 1.3.2. IStrategy接口 1.3.3. ConcreteStrategy1 阅读全文
posted @ 2023-01-12 08:39 躺柒 阅读(40) 评论(0) 推荐(0) 编辑
摘要: 1. 避免基本类型偏执 1.1. 把值声明为基本类型,并对其意义做一些隐含的假定时 1.1.1. 例如:使用number表示邮编 1.1.2. 例如:使用string表示电话号码 1.2. 定义类型来显式捕捉值的含义,从而避免错误解释值 1.2.1. 新类型只是简单地封装了一个数字或字符串 1.2. 阅读全文
posted @ 2023-01-11 08:40 躺柒 阅读(36) 评论(0) 推荐(0) 编辑
摘要: 1. 复合类型 1.1. 乘积类型 1.2. 组合一个或多个类型将得到一个新类型,其值为组成类型的全部可能的组合 1.3. 元组 1.3.1. 一组类型构成,通过它们在元组中的位置可以访问这些组成类型 1.3.2. 一种特殊的分组数据的方式,允许我们将不同类型的多个值作为一个值进行传递 1.3.3. 阅读全文
posted @ 2023-01-10 08:02 躺柒 阅读(36) 评论(0) 推荐(0) 编辑
摘要: 1. 空类型 1.1. uninhabitable type 1.1.1. 声明从不返回的函数 1.2. 不能有任何值的类型,其可取值的集合是一个空集合 1.3. 函数不返回的原因 1.3.1. 函数在所有代码路径上都抛出异常 1.3.2. 函数可能执行无限循环 1.3.3. 导致程序崩溃 1.4. 阅读全文
posted @ 2023-01-09 08:27 躺柒 阅读(21) 评论(0) 推荐(0) 编辑
摘要: 1. 引子 1.1. 1999年发射的火星气候探测者号(Mars ClimateOrbiter)进入火星轨道的过程中失去联络 1.2. 原因 1.2.1. Lockheed(洛克希德·马丁公司)开发的一个组件使用磅力秒(美国单位,可简写为lbfs)来测量动量,而NASA开发的另外一个组件则使用牛顿秒 阅读全文
posted @ 2023-01-08 19:58 躺柒 阅读(43) 评论(0) 推荐(0) 编辑