自定义类型与接口设计全解析
一、自定义类型选择指南
在编程中,自定义类型的选择至关重要。不同的自定义类型有着不同的用途和特点,以下为你详细介绍:
1. 字典(Dictionaries) :字典主要用于键到值的映射。若你使用字典却很少对其进行迭代或动态查询键,那可能并未将其作为关联映射使用,或许需要换一种类型。不过,在运行时从数据源(如获取 JSON、解析 YAML、检索数据库数据等)检索数据时,TypedDict 是合适的选择。但如果在其他地方无需将其作为字典使用,解析数据后应尽量将其转换为自定义类。
2. 枚举(Enumerations) :枚举非常适合表示离散标量值的联合。你无需关心枚举值具体是什么,只需不同的标识符来区分代码中的不同情况。
3. 数据类(Data classes) :数据类适用于大部分相互独立的数据捆绑。你可能对个别字段的设置有一些限制,但总体而言,用户可以自由地获取和设置各个属性。
4. 类(Classes) :类主要围绕不变量。若你有需要保留的不变量,就创建一个类,在构造时确保前置条件成立,并防止任何方法或用户访问破坏该不变量。
以下是选择合适抽象类型的流程图:
graph TD;
A[需要自定义类型?] --> B{数据是键值映射?};
B -->|是| C[考虑字典];
B -->|否| D{数据是离散标量值联合?};
D -->|是| E[考
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



