การพัฒนาแอปพลิเคชันสำหรับระบบปฏิบัติการ iOS นั้นมีหลายช่องทางในปัจจุบัน โดยไม่นานมานี้ ทางไมโครซอฟ ได้เข้าซื้อ Xamarin ซึ่งเป็นซอฟแวร์ สร้างแอปพลิเคชันสำหรับ Android, iOS, Windows Phone โดยใช้ภาษา C# โดยมีแนวคิดแชร์โค้ดในส่วน Logic ระหว่างแพลตฟอร์มได้ (แต่ส่วน User Interface และ Controller ต้องเขียนแยกกัน) ซึ่งเดิมทีซอฟแวร์ตัวนี้มีค่าใช้จ่ายในการนำมาใช้งานพอสมควร แต่ปัจจุบัน สามารถใช้ร่วมกับ Visual Studio ได้ตั้งแต่รุ่น Community ซึ่งฟรี ทำให้มีความน่าสนใจในการนำมาใช้งานสำหรับ ทีมพัฒนาระบบ ที่ใช้ Visual Studio ร่วมกับ ภาษา C# อยู่แล้วเป็นอย่างมาก
สิ่งที่ต้องมี สำหรับการใช้ Xamarin พัฒนา iOS แอปพลิเคชัน
1.เครื่องคอมพิวเตอร์ที่ติดตั้ง macOS ได้ เช่น MacBook , MAC Pro, iMAC เป็นต้น หรือหากท่านใดสามารถสร้าง Virtual Machine ด้วย VirtualBox หรือ VMware แล้วติดตั้ง macOS ได้ ก้สามารถใช้งานได้เช่นกัน
2.Apple ID ที่ลงทะเบียน Apple Developer Account ไว้เรียบร้อยแล้ว (มีค่าใช้จ่ายรายปีประมาณ 3000 บาท)
3.หากต้องการใช้ Visual Studio เวอร์ชันสำหรับ Windows ในการพัฒนาก็ต้องมี เครื่องคอมพิวเตอร์อีกเครื่องที่ติดตั้งระบบปฏิบัติการ Windows (สำหรับท่านที่ต้องการใช้เครื่องเดียว สามารถใช้ Xamarin Studio หรือ Visual Studio For Mac ได้ เท่าที่ผมทดลองใช้งานก็มีความพร้อมระดับใช้งานได้ แม้จะเป็นเวอร์ชั่น Preview ในขณะที่ทดลองก็ตาม)
ติดตั้ง Xamarin และ ตั้งค่าบน macOS
1.ติดตั้ง Xcode จาก App Store ให้เรียบร้อย เนื่องจากตัว Xamarin จำเป็นต้องใช้งานทั้ง iOS SDK และ Simulator ที่ติดตั้งมาพร้อมกับ Xcode ในการ Build และ Run เพื่อทดสอบแอปพลิเคชันของเรา
2.ใช้ Apple Developer Account สร้าง Provisional Profile ได้ที่ https://developer.apple.com/account/ios/certificate จากนั้นทำการดาวน์โหลดและติดตั้งให้เรียบร้อย
3.ดาวน์โหลดตัวติดตั้ง ที่ https://www.xamarin.com/download ใส่ข้อมูล ชื่อ, อีเมล, หน่วยงาน แล้วเลือกว่ามีการติดตั้ง Visual Studio ไว้แล้วหรือไม่ เลือกยอมรับข้อตกลง เลือก Download Xamarin Studio for OS X
4.เมื่อเริ่มติดตั้งจะมีหน้าจอให้ยอมรับข้อตกลง และแสดงความคืบหน้าในการติดตั้ง รอจนแจ้งผลติดตั้งเสร็จสิ้น
5.ตั้งค่าเปิดใช้งาน Remote Login สำหรับการเชื่อมต่อจากเครื่องพัฒนาอื่นไปที่ System Preferences > Sharing
6.เสร็จเรียบร้อยในฝั่ง macOS
ติดตั้ง Xamarin บน Windows เพื่อใช้งานร่วมกับ Visual Studio
1.ดาวน์โหลดตัวติดตั้ง Visual Studio เวอร์ชั่นที่ต้องการใช้งาน สามารถใช้ได้ทั้ง Community, Professional, Enterprise (ในขณะที่เขียนผมใช้เวอร์ชั่น Enterprise 2015 with update 3)
2.เลือกติดตั้งแบบ Custom
3.ติดตั้ง Cross Platform Mobile Development Plugin ที่ตัวเลือกจะมีวงเล็บไว้ให้แล้วว่าเป็น Xamarin เลือกให้เรียบร้อยกด Next
4.รอจนกระบวนการติดตั้งสำเร็จ จะมีหน้าจอแสดงผลการติดตั้งเป็นอันเสร็จเรียบร้อย
5.การใช้งาน Xamarin จำเป็นต้องอัพเดทให้ทันสมัยอยู่เสมอ เนื่องจากตัวซอฟแวร์จะมีการปรับรุ่นให้รองรับ iOS ที่ออกมาใหม่ๆ อยู่เสมอรวมทั้งการแก้ปัญหาบัคต่างๆ ด้วย โดยไปที่ Tools > Options > Xamarin แล้วกด Check Now จะทำการดาวน์โหลดและติดตั้งให้อัตโนมัติ
6.หากมี Visual Studio ติดตั้งอยู่แล้ว ก็ยังสามารถใช้วิธีนี้ได้ครับ เพียงเปิด Installer ขึ้นมาใหม่ แล้วเลือก Modify
สร้างโปรเจ็ค และการใช้งานด้านต่างๆ
1.เปิด Visual Studio เลือก New Project > Visual C# > iOS จากตรงนี้ เราจะต้องเลือกว่า แอปพลิเคชันที่เรากำลังจะทำรองรับอุปกรณ์กลุ่มไหนระหว่าง iPhone, iPad, Universal (ใช้งานได้ทั้ง iPhone และ iPad) จากนั้นก็เลือก Template ให้เหมาะสมกับแอปพลิเคชันของเรา
2.ในส่วนของผมเองเลือกเป็น Universal ครับ ซึ่งหากเลือกแบบนี้เราต้องออกแบบหน้าจอให้รองรับการใช้งานทั้งบน iPhone และ iPad ในขนาดหน้าจอ และความละเอียดต่างๆ ซึ่งวิธีการนั้นก็เฉพาะกับรุ่นของ iOS SDK ครับ
3.ในกรณีใช้อีกเครื่องที่เป็น Windows ในการพัฒนา ก็ต้องทำการเชื่อมต่อกับเครื่อง macOS ที่ได้ติดตั้ง Xamarin Studio ไว้ โดยคลิกที่ไอคอน แล้วทำการ Connect ให้เรียบร้อย
4.โครงสร้างของโปรเจ็คก็จะมีหน้าตาประมาณนี้ครับ สามารถใช้งานความสามารถต่างๆ ของ .Net Framework ได้ครบถ้วน ด้านซ้ายมือมี Toolbox ให้เราสามารถลากวาง Control ที่เหมือนกับพัฒนาโดย Xcode ทุกประการ
5.การเพิ่ม Component ต่างๆ สามารถทำได้ผ่าน NuGet Package Manager
6.การเชื่อมต่อ Web Services ก็ทำได้อย่างง่ายดาย รวมถึงการเปลี่ยน URL ในการเชื่อมต่อขณะ Runtime ก็สามารถทำได้โดยกำหนด Property ชื่อ URL Behavior เป็น Dynamic ซะก่อน
7.เมื่อทำการ Build และ Run ทดสอบ จะปรากฏ Simulator บนเครื่อง macOS นะครับ
บทความนี้ขอจบไว้เพียงเท่านี้ครับ แต่สำหรับเรื่อง Xamarin และ หัวข้อต่างๆ ในการพัฒนาแอปพลิเคชันสำหรับ iOS จะมีตามมาจนครบถึงกระบวนการอัพโหลดขึ้น App Store ได้สำเร็จอย่างแน่นอนครับ