DevIQ — อ้างอิงการออกแบบซอฟต์แวร์ (ฉบับภาษาไทย)
คลังอ้างอิงการออกแบบซอฟต์แวร์จาก DevIQ แปลเป็นภาษาไทยครบทั้ง 208 หัวข้อ ใน 7 หมวด — แต่ละหน้าเรียบเรียงใหม่เชิงลึก พร้อม ไดอะแกรม Mermaid ตัวอย่าง code C# จุดควรใช้/ไม่ควรใช้ และแหล่งอ้างอิงที่ค้นคว้าเพิ่ม ทุกหัวข้อโยงถึงกันด้วย link ภายใน
เริ่มตรงนี้
หัวข้อที่มีชื่อว่า “เริ่มตรงนี้”- เปิดหมวดจากเมนูซ้าย — ทั้ง 7 หมวดยุบไว้ให้เลื่อนง่าย กดเปิดเฉพาะหมวดที่สนใจ
- ทุกหน้ามีโครงเดียวกัน — เจตนา → โครงสร้าง (ไดอะแกรม) → ตัวอย่าง code → เมื่อไหร่ควร/ไม่ควรใช้ → ข้อดีข้อเสีย → ที่เกี่ยวข้อง → แหล่งอ้างอิง
- ค้นหาได้ — กด
Ctrl/⌘ Kแล้วพิมพ์ภาษาไทยหรืออังกฤษ (รองรับการตัดคำไทย) - ไดอะแกรมซูมได้ — คลิกที่ไดอะแกรมเพื่อขยายและเลื่อนดู
แผนที่หมวดหมู่
หัวข้อที่มีชื่อว่า “แผนที่หมวดหมู่”flowchart TD L["Laws · กฎ"] --> P["Principles · หลักการ"] P --> PR["Practices · แนวปฏิบัติ"] P --> DP["Design Patterns · design pattern"] PR --> DP DDD["Domain-Driven Design"] --> DP DP -.->|"ใช้ผิดที่กลายเป็น"| AP["Antipatterns · แอนติ pattern"] P -.->|"ละเลยจนเกิด"| CS["Code Smells · code กลิ่นแรง"] AP --> CS
หลักการ (Principles) คือฐานความคิด — นำไปปฏิบัติเป็น Practices และตกผลึกเป็น Design Patterns; เมื่อฝืนหลักการหรือใช้ผิดบริบทก็กลายเป็น Antipatterns และ Code Smells; Laws เป็นข้อจำกัดเชิงสังเกต ส่วน DDD คือแนวทางเฉพาะสำหรับ domain ที่ซับซ้อน
หมวดทั้งหมด
หัวข้อที่มีชื่อว่า “หมวดทั้งหมด”หลักการออกแบบ · Principles — 26 หัวข้อ
หัวข้อที่มีชื่อว่า “หลักการออกแบบ · Principles — 26 หัวข้อ”หลักคิดตั้งต้นของการออกแบบที่ดี รวม SOLID, DRY, KISS, YAGNI และการจัดการ dependency
เริ่มที่ Single Responsibility →
แนวปฏิบัติ · Practices — 32 หัวข้อ
หัวข้อที่มีชื่อว่า “แนวปฏิบัติ · Practices — 32 หัวข้อ”นิสัยและวิธีทำงานที่นำหลักการไปใช้จริง เช่น TDD, Dependency Injection, Continuous Integration
เริ่มที่ Test-Driven Development →
design pattern · Design Patterns — 39 หัวข้อ
หัวข้อที่มีชื่อว่า “design pattern · Design Patterns — 39 หัวข้อ”แม่แบบแก้ปัญหาการออกแบบที่พบซ้ำ ๆ รวม GoF ครบ (Creational / Structural / Behavioral) และ pattern ระดับสถาปัตยกรรม
แอนติ pattern · Antipatterns — 36 หัวข้อ
หัวข้อที่มีชื่อว่า “แอนติ pattern · Antipatterns — 36 หัวข้อ”รูปแบบที่ดูเหมือนช่วย แต่สร้างปัญหาระยะยาว แยกเป็นระดับ code สถาปัตยกรรม และกระบวนการ
code กลิ่นแรง · Code Smells — 39 หัวข้อ
หัวข้อที่มีชื่อว่า “code กลิ่นแรง · Code Smells — 39 หัวข้อ”สัญญาณใน code ที่บอกว่าถึงเวลาควร refactor พร้อมวิธีแก้แบบ before/after
กฎ · Laws — 20 หัวข้อ
หัวข้อที่มีชื่อว่า “กฎ · Laws — 20 หัวข้อ”กฎและหลักสังเกตที่ส่งผลต่อการออกแบบและทีม เช่น Conway’s Law, Gall’s Law
Domain-Driven Design — 16 หัวข้อ
หัวข้อที่มีชื่อว่า “Domain-Driven Design — 16 หัวข้อ”แนวคิดหลักของการออกแบบที่ยึด domain เป็นศูนย์กลาง เช่น Aggregate, Bounded Context, Ubiquitous Language