Web API 数据类型:枚举、列表与映射的使用指南
1. 枚举类型的利与弊
枚举类型在强类型编程语言中很常见,类似于程序员的下拉选择器。虽然在 Java 等语言中,枚举类型有其优势,它既可以作为一种验证形式(只有指定的值才被认为是有效的),又能实现压缩(每个值通常用一个数字而不是代码中的文本表示),但将其移植到 Web API 中往往是个错误。
1.1 枚举类型的问题
- 可读性差 :使用整数值来表示枚举值会导致代码的可读性降低。例如,在以下代码中:
enum Color {
Brown = 1, // #A
Blue,
Green, // #B
}
interface Person {
id: string;
name: string;
eyeColor: Color; // #C
}
如果 person.eyeColor 被设置为 2 ,这比设置为 "blue" 更难理解,因为需要查找数字对应的实际含义。在查看请求日志时,这种情况会变得很麻烦。
- 扩展性差 :当服务器添加新的枚举值时,客户端需要更新本地映射(通常需要更新客户端库),而不能简单地发送不同的值。如果客户端没有被告知新值的含义,客户端代码会感到困惑。例如,API 添加了一个新的 Color 值 Hazel
超级会员免费看
订阅专栏 解锁全文

3307

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



