Swift Package Manager
Swift Package Manager, Package.swift, dependencies, การกำหนดเวอร์ชัน, local packages
1ไฟล์ manifest หลักที่จำเป็นสำหรับการกำหนด Swift Package คืออะไร?
ไฟล์ manifest หลักที่จำเป็นสำหรับการกำหนด Swift Package คืออะไร?
คำตอบ
ไฟล์ Package.swift เป็น manifest ที่จำเป็นสำหรับทุก Swift Package โดยมี metadata ของแพ็กเกจ, dependencies, target และ product หากไม่มีไฟล์นี้ที่ root ของแพ็กเกจ Xcode จะไม่สามารถรับรู้โครงสร้างนั้นว่าเป็นแพ็กเกจที่ถูกต้องได้
2จะกำหนด target ที่สามารถรันได้ใน SPM อย่างไร?
จะกำหนด target ที่สามารถรันได้ใน SPM อย่างไร?
คำตอบ
executable target จะสร้างแอปพลิเคชันหรือเครื่องมือ command-line โดยต่างจาก library target ตรงที่สร้าง binary ที่รันได้แบบ standalone executable target ต้องมี entry point ที่ถูกต้อง (ไฟล์ main.swift หรือ @main) จึงจะคอมไพล์ได้อย่างถูกต้อง SPM ใช้ .executableTarget() ใน Package.swift เพื่อกำหนด target ประเภทนี้
3ความแตกต่างระหว่าง target กับ product ใน SPM คืออะไร?
ความแตกต่างระหว่าง target กับ product ใน SPM คืออะไร?
คำตอบ
target คือหน่วยการคอมไพล์ที่บรรจุซอร์สโค้ด ส่วน product คือสิ่งที่นำไปใช้งานได้ซึ่งสร้างจากหนึ่ง target หรือมากกว่า product จะเปิดเผย target สู่ภายนอกและกำหนดว่าจะแจกจ่ายอย่างไร ตัวอย่างเช่น target เดียวกันสามารถถูกเปิดเผยเป็น library แบบ static หรือ dynamic ได้ขึ้นอยู่กับ product การแยกส่วนนี้ให้ความยืดหยุ่นในการแจกจ่ายโค้ดในขณะที่รวมศูนย์ logic การคอมไพล์ไว้ที่เดียว
จะประกาศ dependency จากระยะไกลใน SPM อย่างไร?
บทบาทของ dependency ในเครื่อง (local) ใน SPM คืออะไร?
+13 คำถามสัมภาษณ์
หัวข้อสัมภาษณ์ 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
Memory Management & ARC
Combine Framework
Concurrency & async/await
iOS Design Patterns
การเพิ่มประสิทธิภาพ
ความปลอดภัยและการเข้ารหัส
SwiftUI Advanced
สถาปัตยกรรมแอปพลิเคชัน iOS
เชี่ยวชาญ iOS สำหรับการสัมภาษณ์ครั้งถัดไป
เข้าถึงคำถามทั้งหมด flashcards แบบทดสอบเทคนิค แบบฝึกหัด code review และตัวจำลองสัมภาษณ์
เริ่มใช้ฟรี