ตามที่คนอื่น ๆ กำลังพูดกันชั้นรายรับของคนงานจะอนุญาตให้มีการกำหนดพารามิเตอร์ของค่าคงที่ทำให้คลาสนี้เป็นอิสระจากค่านั้น
ในที่สุดแอปพลิเคชันการโทรอาจอนุญาตการกำหนดพารามิเตอร์ในแง่ของการกำหนดค่าภายนอก (เช่นไฟล์) เมื่อเรามีการกำหนดค่าภายนอกเราสามารถเปลี่ยนอัตราภาษีได้ - แม้ว่าจะพิจารณาว่าหากไฟล์การกำหนดค่าจะอ่านเพียงครั้งเดียวเมื่อเริ่มต้นระบบจะต้องเริ่มต้นแอปพลิเคชันใหม่เพื่อให้เปอร์เซ็นต์ภาษีที่อัปเดตมีผล ใจ เราสามารถให้คุณสมบัติแอปพลิเคชันเพื่ออ่านการกำหนดค่าอีกครั้งเมื่อสั่งให้ทำเช่นนั้นหรือเราอาจจัดเตรียมกลไกที่ซับซ้อนมากขึ้นซึ่งจะสังเกตเห็นเมื่อไฟล์การกำหนดค่ามีการเปลี่ยนแปลง ...
ในระยะยาวคุณอาจพบว่าปัญหาภาษีต้องการมากกว่าร้อยละ - ตัวอย่างเช่นวันหนึ่งกฎหมายภาษีมีความซับซ้อนมากขึ้นและต้องใช้หลายเปอร์เซ็นต์และค่าคงที่บางอย่าง (เช่นจำนวนเงินต่ำกว่า $ 10k ที่เก็บภาษีที่ X% ในขณะที่ ภาษีที่เหลืออยู่ที่ Y%)
นี่เป็นการแนะนำโดยใช้รูปแบบกลยุทธ์ที่ชั้นเรียนหลักในคำถามที่นี่ยอมรับวัตถุกลยุทธ์สำหรับการคำนวณภาษี
กลยุทธ์ต่างๆ (และ% ของและค่าคงที่ $) ควรจะสามารถเลือกได้จากไฟล์การกำหนดค่าและตอนนี้การเพิ่มกลยุทธ์ใหม่ต้องเพิ่มรหัสใหม่บางอย่าง แต่ไม่จำเป็นต้องปรับปรุงรหัสที่มีอยู่
แต่ละกลยุทธ์อาจรู้วิธีแยก / ตีความอาร์กิวเมนต์การกำหนดค่าภายนอกของตัวเองพร้อมกับวิธีคำนวณภาษีจริง
ภาษีอาจขึ้นอยู่กับสถานที่ที่ควบคุมดังนั้นคุณอาจมีสถานที่ที่เกี่ยวข้องกับรายได้หรือกับพนักงาน (หรือทั้งสองอย่าง) ในการกำหนดค่าภายนอกเราอาจเชื่อมโยงตำแหน่งที่ตั้งกับกลยุทธ์ด้านภาษี
ดูการฉีดที่พึ่งพาซึ่งเราจัดการสิ่งเหล่านี้อย่างชัดเจน