← 返回 Day 38 正文

Day 38 · 练习与清单

Day 038 — 创建型设计模式:检查清单

✅ 完成后勾选,标记为 [x]

📚 概念理解

💻 代码实践

🧪 练习题

请完成以下练习,每题创建一个单独的 .py 文件。

练习 1:日志单例

创建一个日志类 AppLogger,使用单例模式:

示例:

python
logger = AppLogger()
logger.set_level("DEBUG")
logger.info("系统启动")      # 输出
logger.debug("调试信息")     # 输出(因为级别 ≤ DEBUG)
logger.set_level("WARNING")
logger.info("这不会被输出")  # 不输出(级别 < WARNING)

练习 2:支付工厂

实现一个支付工厂系统:

练习 3:UI 组件工厂

实现一个跨平台 UI 组件工厂:

练习 4:计算机建造者

使用建造者模式实现 ComputerBuilder:

python
gaming = ComputerBuilder() \
    .cpu("i9-13900K") \
    .gpu("RTX 4090") \
    .ram(32, "DDR5") \
    .storage(2048, "NVMe SSD") \
    .cooling("水冷") \
    .build()

office = ComputerBuilder() \
    .cpu("i5-13400") \
    .ram(16, "DDR4") \
    .storage(512, "SSD") \
    .build()

Computer 应有 spec() 方法返回完整配置字符串。

练习 5:文档对象池

实现一个文档编辑器中的对象池:


📊 进度追踪

项目 完成情况
阅读 README.md [ ]
运行 01-basic-usage.py [ ]
运行 02-advanced-usage.py [ ]
运行 03-config-manager.py [ ]
练习 1:日志单例 [ ]
练习 2:支付工厂 [ ]
练习 3:UI 组件工厂 [ ]
练习 4:计算机建造者 [ ]
练习 5:文档对象池 [ ]
完成检查清单 [ ]