21 คะแนน โดย xguru 2025-05-15 | 1 ความคิดเห็น | แชร์ทาง WhatsApp
  • เครื่องมือทดแทน Xcode แบบข้ามแพลตฟอร์ม ที่สามารถบิลด์โปรเจกต์ที่ใช้ SwiftPM ได้บน Linux, Windows(WSL), macOS จากที่ใดก็ได้ และดีพลอยลงอุปกรณ์เป็น .ipa ได้
  • มีประโยชน์ในสภาพแวดล้อม CI/CD โดยทำให้งานที่ต้องใช้ Xcode ง่ายขึ้นและเป็นอัตโนมัติ (เป็นผลงานจากการพัฒนาตลอด 8 ปีเพื่อทำระบบอัตโนมัติสำหรับการดีพลอย iOS)
  • มีความสามารถสำหรับการเซ็นแอป iOS และการติดตั้ง รวมถึงการเชื่อมต่อกับ Apple Developer Services
    • เป็นไลบรารี Swift ชื่อ XKit ที่ช่วยให้แอปของผู้ใช้โต้ตอบกับ Apple Developer Services หรืออุปกรณ์ iOS ได้โดยตรง
  • ข้อจำกัดนอกสภาพแวดล้อม macOS และแผนในอนาคต
    • Interface Builder : มีความซับซ้อนในการพัฒนาสูงมาก และSwiftUI เข้ามาแทนที่ได้เป็นส่วนใหญ่แล้ว
    • Asset Catalogs : จำเป็นต้องทำ reverse engineering แต่ก็คุ้มค่าที่จะรองรับ ปัจจุบันสามารถใช้วิธีเพิ่มไฟล์ภาพเป็นไฟล์ raw แทนได้
    • Proprietary Macros
      • แมโครมาตรฐานอย่าง @Observable ใช้งานได้
      • แมโครเฉพาะของ Apple เช่น SwiftData จำเป็นต้อง reverse engineer แล้วประกอบขึ้นใหม่
      • หาก Apple แจกจ่ายในรูปแบบแมโคร WebAssembly ก็จะสามารถใช้งานได้บนทุกแพลตฟอร์ม (ดูข้อเสนอใน Swift Forums)
    • App Extensions
      • ขณะนี้บิลด์ได้เฉพาะ target ประเภท "Application"
      • สามารถแก้ได้ด้วยการขยายสเปก xtool.yml เพื่อรองรับ
    • LLDB debugging
      • ก่อน iOS 17 ทำได้ไม่ยาก แต่ Apple ได้เปลี่ยนวิธีเรียก debugserver
      • สามารถเชื่อมต่อได้โดยใช้เครื่องมืออย่าง pymobiledevice3
      • การรวมโปรโตคอล RemoteXPC แบบใหม่เป็นงานในอนาคต
    • App Store Connect deployment
      • ตอนนี้รองรับเฉพาะการรันบนอุปกรณ์ของตัวเอง
      • iTMSTransporter เป็นแบบข้ามแพลตฟอร์ม และมีโครงสร้างพื้นฐานสำหรับเชื่อมต่อ ASC API พร้อมอยู่แล้ว จึงมีความเป็นไปได้ที่จะรองรับได้

1 ความคิดเห็น

 
xguru 2025-05-15

Apple ประกาศโอเพนซอร์ส Swift Build อันนี้ดูเหมือนเป็นของที่ทำขึ้นแยกต่างหาก ไม่เกี่ยวกับอันนั้นนะครับ