[Design Pattern] Observer Pattern in Depth

คราวนี้มาเป็น Pattern ที่ 2 แล้วที่ผมเขียนในเรื่อง Design Pattern in Depth โดยตอนนี้ขอเขียนเกี่ยวกับ BNK48 แล้วกันครับ น้องเณอปราง ^___^ ทำไมต้องใช้ Observer Pattern ถ้า Design ด้านแนวคิดที่ว่า อยากรู้ให้มาถาม (Server) สิ่งที่เกิดขึ้น คือ Client ต้องคอยวิ่งมาถาม (Request) ตรวจสอบว่าข้อมูลที่ Server มัน Update ยัง … Update ยังงง ถ้าเกิดข้อมูลที่ต้องกระจายเป็นข้อมูลของวง Girl Group อย่าง BNK48 กำหนดให้เป็น Class BNK48Data ซึ่งมีหน้าที่ (Operation) Method getMemberData() – ข้อมูลสมาชิก Method getVote() – ดูผลการโหวต Method BNKDataChange() – เอาไว้ Update Data ของกับหน้าจอของ User แล้วถ้าต้องเพิ่ม Dashboard สรุป stat ที่งาน (มโนไปไกลเลยเรา 555) คือ แก้ Code ใน Class BNK48VoteDataOld !!!!!! มาดู Class Diagram แบบแรกกันครับ !!!! เราทำอย่างไรให้ Class BNK48Data นั้น Clean ที่สุด แก้อะไรก็แล้วเพิ่มแล้ว ไม้ต้องไปสั่ง Update ให้ Client ด้วย ถ้ามีดูที่ Class BNKVoteDateOld Method BNK48DataChange() มันต้องไป Update Display ทั้ง 2…