儲存資料的選擇上,作者建議用物件封裝可變資料, 使用者就不用在乎裡面樣貌,更改相關名稱也能階段式完成; 用記錄封裝不可變資料,像用hashmaphashmapdictionary 等。

Encapsulate Record

在小範圍用這些記錄不太會有問題,但隨著被用範圍擴大, 結構隱晦這缺點就值得封裝它們為資料類別(Data Class)。

# Before
employee = {
    "name": "John Doe",
    "age": 30,
    "department": "Finance"
}
print(f"Employee Name: {employee['name']}, Department: {employee['department']}")

# After
class Employee:
    def __init__(self, name, age, department):
        self.name = name
        self.age = age
        self.department = department

employee = Employee("John Doe", 30, "Finance")
print(f"Employee Name: {employee.name}, Department: {employee.department}")