All gists matching topic strategy-pattern

timmy / 策略模式實作 YAML 與 JSON 資料處理

0 gustos
0 bifurcaciones
1 archivos
Última actividad 10 months ago
這段 Python 程式碼使用 策略模式(Strategy Pattern),定義一個 DataHandlerStrategy 介面,並實作 YAML (YamlHandler) 與 JSON (JsonHandler) 兩種不同的資料處理策略。它提供統一的 read_data 和 write_data 方法,讓程式可以根據不同的檔案格式 靈活讀取與寫入 YAML 或 JSON 檔案,適用於 配置管理、資料序列化或跨格式資料處理應用。
1 import yaml
2 import json
3 from abc import ABC, abstractmethod
4
5 # 策略介面
6 class DataHandlerStrategy(ABC):
7 @abstractmethod
8 def read_data(self, path):
9 pass

timmy / 策略模式在購物車計價中的應用

1 gustos
0 bifurcaciones
1 archivos
Última actividad 10 months ago
這段程式碼實作「策略模式(Strategy Pattern)」,用於計算購物車的總金額,並允許 根據不同的定價策略(如正常價格或折扣價格) 來計算最終價格。
1 from abc import ABC, abstractmethod
2
3 # 策略介面
4 class PricingStrategy(ABC):
5 @abstractmethod
6 def calculate_price(self, price):
7 pass
8
9 # 具體策略類
10 class NormalStrategy(PricingStrategy):

timmy / 策略模式在資料管理中的應用

0 gustos
0 bifurcaciones
1 archivos
Última actividad 10 months ago
此範例展示策略模式在 YAML 和 JSON 資料處理中的應用,DataHandlerStrategy 定義通用的讀寫介面,並透過 YamlHandler 和 JsonHandler 來處理不同格式的資料。DataManager 負責管理資料存取,並可動態切換處理策略,提高靈活性與可維護性。
1 import time
2 import yaml
3 import json
4 from abc import ABC, abstractmethod
5 import streamlit as st
6
7 # 策略介面
8 class DataHandlerStrategy(ABC):
9 @abstractmethod
10 def read_data(self, path):
Siguiente Anterior