วิธีที่ดีที่สุดในการเขียนโค้ดระบบ Achievements
ฉันกำลังคิดหาวิธีที่ดีที่สุดในการออกแบบระบบรางวัลพิเศษสำหรับใช้บนไซต์ของฉัน โครงสร้างฐานข้อมูลสามารถพบได้ในวิธีที่ดีที่สุดในการบอกระเบียนติดต่อกัน 3 รายการขึ้นไปที่ขาดหายไปและเธรดนี้เป็นส่วนเสริมในการรับแนวคิดจากนักพัฒนา ปัญหาที่ฉันมีจากการพูดคุยมากมายเกี่ยวกับระบบตรา / รางวัลพิเศษบนเว็บไซต์นี้มีเพียงแค่นั้น - ทั้งหมดนี้เป็นการพูดคุยและไม่มีรหัส ตัวอย่างการติดตั้งโค้ดจริงอยู่ที่ไหน ฉันเสนอการออกแบบที่ฉันหวังว่าผู้คนจะมีส่วนร่วมและหวังว่าจะสร้างการออกแบบที่ดีสำหรับการเข้ารหัสระบบความสำเร็จที่ขยายได้ ฉันไม่ได้บอกว่านี่เป็นสิ่งที่ดีที่สุดไกลจากมัน แต่มันเป็นช่วงเริ่มต้นที่เป็นไปได้ โปรดอย่าลังเลที่จะให้ความคิดของคุณ แนวคิดการออกแบบระบบของฉัน ดูเหมือนว่าฉันทามติทั่วไปคือการสร้าง "ระบบตามเหตุการณ์" - เมื่อใดก็ตามที่เหตุการณ์ที่ทราบเกิดขึ้นเช่นมีการสร้างโพสต์ลบ ฯลฯ จะเรียกคลาสเหตุการณ์เช่นนั้น .. $event->trigger('POST_CREATED', array('id' => 8)); จากนั้นคลาสกิจกรรมจะค้นหาว่าป้ายใด "กำลังฟัง" สำหรับกิจกรรมนี้จากนั้นจึงเป็นrequiresไฟล์นั้นและสร้างอินสแตนซ์ของคลาสนั้นดังนี้: require '/badges/' . $file; $badge = new $class; จากนั้นจะเรียกเหตุการณ์เริ่มต้นที่ส่งผ่านข้อมูลที่ได้รับเมื่อtriggerถูกเรียก $badge->default_event($data); ป้าย นี่คือที่ที่เวทมนตร์ที่แท้จริงเกิดขึ้น ป้ายแต่ละป้ายมีคำถาม / ตรรกะของตัวเองเพื่อพิจารณาว่าควรได้รับป้ายหรือไม่ แต่ละป้ายกำหนดไว้ในรูปแบบเช่นนี้: class Badge_Name extends Badge { …