[Design Patterns Series] #0 What is it?

Design Patterns คืออะไร?

thip
thipwriteblog
1 min readNov 13, 2017

--

Design Patterns เป็นหลักการ/รูปแบบการเขียนโปรแกรมเชิงวัตถุที่เป็นมาตรฐานและเป็นที่ยอมรับ หากนำไปใช้ซ้ำ (Reusable) กี่ครั้งก็จะได้ผลลัพธ์แบบเดียวกัน โดยไม่ขึ้นกับประสบการณ์ของ Developer

ซึ่งการออกแบบ software เชิงวัตถุ (OOD-Object Oriented Design) เป็นการออกแบบเพื่อตอบโจทย์กับ Requirement ที่ต้องการจะแก้ปัญหาใดๆ ดังนั้นหากต้องการ software ที่มีประสิทธิภาพ ยืดหยุ่น จึงจำเป็นต้องมีการออกแบบที่ดี

Design Patterns เหล่านี้ล้วนเป็นรูปแบบที่ผ่านการใช้งานและเป็นที่ยอมรับแล้วว่า หากใช้วิธีการออกแบบและพัฒนาตามรูปแบบต่างๆของ Design Patterns จะทำให้ได้ software ที่ยืดหยุ่น, reusable และมีประสิทธิภาพ รวมทั้งช่วยในการทำงานของเหล่า Developer อีกด้วย เพราะหากใช้มาตรฐานเดียวกันในการเขียนโปรแกรมก็จะทำให้ลดเวลาในการเรียนรู้ (แต่ต้องรู้ Design Patterns ก่อนนะ!) และยังลดช่องว่างของความต่างในเรื่องประสบการณ์อีกด้วย

https://gof-design-patterns-jaypee.en.aptoide.com

GoF Design Patterns

GoF ย่อมาจาก Gang of Four เป็นชุดของ Design Patterns ที่รวบรวมโดยคน 4 คน โดยทั้งชุดประกอบด้วย 23 Patterns แบ่งย่อยเป็น 3 หมวดตามวัตถุประสงค์ในการใช้งาน

  1. Creational → สำหรับแก้ปัญหา :: ในการสร้าง Object
  2. Structural → สำหรับแก้ปัญหา :: โครงสร้างความสัมพันธ์ระหว่าง Class
  3. Behavioral → สำหรับแก้ปัญหา :: พฤติกรรมของ Object และความสัมพันธ์ระหว่าง Object

**จะเห็นได้ว่า Scope ของ Design Patterns จะมี 2 ส่วน คือ Object และ Class

แต่ละหมวดประกอบด้วยอะไรบ้าง

อื้อหืออออ!! @_@ เยอะชะมัด ขอกำลังใจหน่อยยยย ฮึ๊บๆ ฮูเร่ๆ นอกจากความเยอะแล้ว เรายังต้องเผชิญกับความยากในการทำความเข้าใจแต่ละ Patterns ด้วยสินะ Omg! อาจจะมีอาการอ่านไป กรี๊ดไป ฮ่าาา เอาหน่า… ‘มีประโยชน์ๆ’ ท่องไว้ๆ ค่อยๆก้าวแบบพี่ตูน 5555+ #เกี่ยวอะไรกับเขาไหม วันนี้ก็จบไว้แต่เพียงเท่านี้ก่อน.

--

--