
Go Design Patterns
Singleton, Factory, Builder, Strategy, Decorator, Adapter, functional options, SOLID
1ข้อดีหลักของ pattern Functional Options ใน Go คืออะไร?
ข้อดีหลักของ pattern Functional Options ใน Go คืออะไร?
คำตอบ
Pattern Functional Options ช่วยให้สร้าง API ที่กำหนดค่าได้พร้อมพารามิเตอร์ที่เป็นทางเลือกโดยไม่ต้อง overload constructor มันหลีกเลี่ยงการมี constructor หลายตัวที่มี signature ต่างกันและให้ API ที่ขยายได้และอ่านง่าย Pattern นี้เป็น idiomatic ใน Go เพราะใช้ประโยชน์จาก first-class function และหลีกเลี่ยงค่าเริ่มต้นที่กำกวม
2แนวทางใดที่แนะนำสำหรับการ implement pattern Singleton ใน Go?
แนวทางใดที่แนะนำสำหรับการ implement pattern Singleton ใน Go?
คำตอบ
ใน Go pattern Singleton ถูก implement ได้ดีที่สุดด้วย sync.Once ซึ่งรับประกันการเริ่มต้นแบบ thread-safe และ lazy initialization แนวทางนี้หลีกเลี่ยง mutex แบบ manual และ double-checked locking ซึ่งมักเกิดข้อผิดพลาด sync.Once รับประกันว่าฟังก์ชันจะถูกเรียกใช้เพียงครั้งเดียวแม้จะมีหลาย goroutine ทำงานพร้อมกัน
3หลักการ SOLID ใดที่สนับสนุนการใช้ interface ใน Go?
หลักการ SOLID ใดที่สนับสนุนการใช้ interface ใน Go?
คำตอบ
หลักการ Dependency Inversion ระบุว่าโมดูลระดับสูงไม่ควรขึ้นกับโมดูลระดับต่ำ แต่ควรขึ้นกับสิ่งที่เป็นนามธรรม (interface) ใน Go สิ่งนี้แปลเป็นการรับ interface และคืนค่าเป็นชนิดที่เป็นรูปธรรม หลักการนี้ช่วยให้การทดสอบ (mocking) การลดการพึ่งพากัน และการบำรุงรักษาโค้ดทำได้ง่ายขึ้น
จะ implement pattern Factory ใน Go แบบ idiomatic ได้อย่างไร?
บทบาทหลักของ Adapter pattern คืออะไร?
+21 คำถามสัมภาษณ์
หัวข้อสัมภาษณ์ Go อื่นๆ
พื้นฐาน Go
โครงสร้างข้อมูล Go
อินเทอร์เฟซใน Go
การจัดการข้อผิดพลาด
พื้นฐาน Goroutine
Channels
Go Modules
เซิร์ฟเวอร์ HTTP
ไคลเอนต์ HTTP
การเข้ารหัส JSON
Database/SQL
แพ็กเกจ context
Testing
รูปแบบ Concurrency
ไพรมิทีฟการซิงโครไนซ์
เฟรมเวิร์กเว็บ Go
การออกแบบ REST API
gRPC
Reflection
การจัดการหน่วยความจำ
การเพิ่มประสิทธิภาพการทำงาน
Generics
Microservices
ความปลอดภัยและการยืนยันตัวตน
Docker & Containerization
Kubernetes Basics
Go ขั้นสูง
การพัฒนา CLI
เชี่ยวชาญ Go สำหรับการสัมภาษณ์ครั้งถัดไป
เข้าถึงคำถามทั้งหมด flashcards แบบทดสอบเทคนิค แบบฝึกหัด code review และตัวจำลองสัมภาษณ์
เริ่มใช้ฟรี