05 2024 档案
不可变(immutable)设计原则
摘要:我们先从 Java 的数据类型与类型检查说起 数据类型 数据类型是什么? 数据类型是一组值以及可以对其执行的操作,比如: - boolean: Truth value(true or false) - int: Integer(0, 1, -47) - double: Real number(3.1
面向 Reuse 的软件构造技术
摘要:前几章介绍了软件构造的核心理论——ADT,核心技术——OOP,其核心是保证代码质量、提高代码安全性 本章面向一个重要的外部指标:可复用性——如何构造出可在不同应用中重复使用的软件模块/API 为什么复用? 软件复用有两个视角: 面向复用编程:开发出可复用的软件 基于复用编程:利用已有的可复用软件搭建
Equality in OOP and ADT
摘要:在现实物理世界中,任何对象都是不相等的 但是对于人类语言,或者对于数学世界,完全可以有很多相同的东西,例如√9 和 3 表现了相等的数值,我们完全可以认为两者是相同的 那么在软件世界中,Java 的==和equals()有什么区别? 在很多场景下,需要判定两个对象是否 “相等”,例如:判断某个Col
设计模式详解
摘要:本文结构图: 除了类本身,设计模式更强调多个类/对象之间的关系和交互过程——比接口/类复用的粒度更大 创建型模式(Creational patterns) 工厂方法模式(Factory Method pattern) 工厂方法也被称作虚拟构造器(Virtual Constructor) 即定义一个用