🧱Structural Patterns

ตัวช่วยจัดการโครงสร้างของโค้ด

Best Practice หลักในการออกแบบที่ดีคือ มันต้องดิ้นได้โดยไม่ต้องแก้ไขโค้ดเดิม หรือที่เรารู้จักในชื่อของ OCP นั่นเอง ถ้าสนใจก็กดที่ชื่อมันเพื่อเข้าไปศึกษาต่อได้เบย เพราะมันจะช่วยให้โค้ดของเราเพิ่มความสามารถใหม่ๆเข้าไปได้ โดยที่เราไม่จำเป็นต้องแก้ไขโค้ดเดิมเลยนั่นเอง 😉

เมื่อพูดถึงการออกแบบว่าเราควรจะมีคลาสอะไรบ้าง? แต่ละคลาสควรมีโครงสร้างยังไงถึงจะช่วยให้เราทำงานได้เร็วขึ้น ไม่ซับซ้อนจนเกินไป บลาๆ ดชแมวน้ำ แนะนำให้ศึกษา Design Patterns ในกลุ่มของ Structural Patterns ด้านล่างนี้ฮั๊ฟ

😭 ใครช่วยแก้ปัญหานี้ได้บ้าง ?

ในกุล่มของ Structural Patterns นี้มีพระเอกหลายตัวเลยที่จะมาช่วยแก้ปัญหาเรื่องการออกแบบในระดับโครงสร้างกันเลยทีเดียว ซึ่งเจ้าตัว design แต่ละตัวมันจะเก่งกันคนละเรื่อง ขึ้นอยู่กับว่าปัญหาที่เราเจอเป็นแบบไหน ดังนั้นไปดูว่าแต่ละตัวมันช่วยแก้ปัญหาอะไรเลยละกัน

เปลี่ยนของ 2 อย่างที่ทำงานด้วยกันยากๆ มาทำงานด้วยกันได้ง่าย

ควบคุม object ให้ทำงานดั่งใจ

  • Bridge Pattern (ว่างเดี๋ยวกลับมาเขียน)

  • Composite pattern (ว่างเดี๋ยวกลับมาเขียน)

  • Decorator Pattern (ว่างเดี๋ยวกลับมาเขียน)

  • Facade Pattern (ว่างเดี๋ยวกลับมาเขียน)

  • Flyweight pattern (ว่างเดี๋ยวกลับมาเขียน)

คำเตือน ไม่ควรนำ Design Patterns ไปใช้ โดยไม่ได้ชั่ง ผลดี/ผลเสีย ให้เรียบร้อยก่อน เพราะมันจะทำให้โค้ดเราซับซ้อนโดยไม่จำเป็น แล้วจะแก้ไขปรับปรุงอะไรต่างๆก็จะกลายเป็นเต่า แต่จงศึกษา Design Patterns เพื่อเรียนรู้หลักในการออกแบบ เพื่อจะได้รู้ว่าเมื่อไหร่ไม่ควรใช้ Pattern

คอร์สนี้กำลังค่อยๆเขียนอยู่ ใครที่ไม่อยากพลาดอัพเดทก็เข้าไปกดติดตามที่ลิงค์ Mr.Saladpuk ได้เลย ส่วนใครที่อยากศึกษา pattern ตัวไหนล่วงหน้าก็ไปอ่านบทความเก่าได้ที่ลิงค์นี้ 🤴 Design Patterns (อ่านแล้วเมากาวไม่รู้ด้วยนะ) + ในคอร์สนี้จะเริ่มอธิบาย Pattern แต่ละตัวจากกลุ่มนี้ก่อนนะครัช

Last updated