iOS Design Patterns
Singleton, Factory, Builder, Observer, Coordinator, Repository, Dependency Injection, SOLID
1Pattern ใดรับประกันว่ามี instance ของ class เพียงตัวเดียวตลอดทั้งแอปพลิเคชัน?
Pattern ใดรับประกันว่ามี instance ของ class เพียงตัวเดียวตลอดทั้งแอปพลิเคชัน?
คำตอบ
Singleton pattern จำกัดการสร้าง instance ให้เหลือเพียง instance ส่วนกลางตัวเดียว ใน iOS ช่วยให้เข้าถึงทรัพยากรที่ใช้ร่วมกัน เช่น การตั้งค่าหรือ manager แบบรวมศูนย์ได้ อย่างไรก็ตาม Singleton ลดความสามารถในการทดสอบ เพราะสร้างการพึ่งพาส่วนกลางที่ mock ได้ยาก
2Pattern ใดที่ทำให้การสร้างอ็อบเจกต์เป็นนามธรรมโดยไม่เปิดเผยตรรกะการสร้าง instance ที่แท้จริง?
Pattern ใดที่ทำให้การสร้างอ็อบเจกต์เป็นนามธรรมโดยไม่เปิดเผยตรรกะการสร้าง instance ที่แท้จริง?
คำตอบ
Factory pattern ห่อหุ้มการสร้างอ็อบเจกต์ไว้ใน method หรือ class เฉพาะ ซึ่งช่วยให้แก้ไขตรรกะการสร้างได้โดยไม่กระทบโค้ดฝั่ง client ใน iOS factory method ช่วยลดความซับซ้อนในการจัดการ dependency ที่ซับซ้อนและทำให้ทดสอบได้ง่ายผ่านการแทนที่ที่สะดวก
3Pattern ใดที่สร้างอ็อบเจกต์ที่ซับซ้อนทีละขั้นตอนพร้อมแยกการสร้างออกจากการแสดงผล?
Pattern ใดที่สร้างอ็อบเจกต์ที่ซับซ้อนทีละขั้นตอนพร้อมแยกการสร้างออกจากการแสดงผล?
คำตอบ
Builder pattern ช่วยให้สร้างอ็อบเจกต์ที่มีพารามิเตอร์ทางเลือกจำนวนมากได้โดยไม่ต้อง overload constructor ใน iOS ช่วยเพิ่มความชัดเจนของโค้ดและทำให้ดูแลรักษาง่ายขึ้น ต่างจาก Factory ที่คืนค่าทันที Builder อนุญาตให้กำหนดค่าแบบค่อยเป็นค่อยไปและลื่นไหล
Pattern ใดที่กำหนดความสัมพันธ์แบบหนึ่ง-ต่อ-หลายที่ observer ได้รับการแจ้งเตือนการเปลี่ยนแปลงโดยอัตโนมัติ?
การใช้งานหลักของ Factory ในการสร้างอ็อบเจกต์ด้วยตรรกะเงื่อนไขคืออะไร?
+21 คำถามสัมภาษณ์
หัวข้อสัมภาษณ์ iOS อื่นๆ
พื้นฐาน Swift
พื้นฐานภาษา Swift
พื้นฐาน UIKit
วงจรชีวิตของ UIViewController
UserDefaults & Keychain
วงจรชีวิตของแอปพลิเคชัน
Auto Layout & Constraints
UITableView & UICollectionView
พื้นฐาน SwiftUI
การจัดการ State ใน SwiftUI
การนำทาง SwiftUI
Networking & URLSession
Codable และการแยกวิเคราะห์ JSON
Core Data
การเขียนโปรแกรมเชิงโปรโตคอล
สถาปัตยกรรม MVVM
การแจ้งเตือนแบบ Push
Unit Testing และ XCTest
การทดสอบ UI
Xcode และระบบ Build
Swift Package Manager
Memory Management & ARC
Combine Framework
Concurrency & async/await
การเพิ่มประสิทธิภาพ
ความปลอดภัยและการเข้ารหัส
SwiftUI Advanced
สถาปัตยกรรมแอปพลิเคชัน iOS
เชี่ยวชาญ iOS สำหรับการสัมภาษณ์ครั้งถัดไป
เข้าถึงคำถามทั้งหมด flashcards แบบทดสอบเทคนิค แบบฝึกหัด code review และตัวจำลองสัมภาษณ์
เริ่มใช้ฟรี