Swift

บทวิเคราะห์: Swift จะเป็นผู้จบสงคราม Cross Platform ครั้งที่ 3 หรือไม่?

เรื่องที่เกี่ยวข้อง - Cross Platform, Swift, Swift for Android

ต้นฉบับบทความนี้โพสขึ้นครั้งแรกที่ Medium ของโค้ชพลเป็นภาษาอังกฤษ

วันนี้ สิ่งที่คุณจะเห็นรอบๆ อินเตอร์เน็ตเกี่ยวกับ Google ก็คือ ข่าวลือที่พวกเขาจะใช้ Swift เป็นอีกภาษาหลักในการพัฒนาแอพ Android แทนที่ Java

ในฐานะที่พลเป็นนักพัฒนาสายควบสอง (Cross Platform นั่นแหละ) พลก็มักมองหาสุดยอดเครื่องมือที่จะสามารถใช้ในการพัฒนาแอพพลิเคชั่นบนหลายๆ แพลตฟอร์มจากโค้ดชุดเดียวได้ (ทางเทคนิคคือ reuse)

และหลังจากผ่านมาหลายปี พลสามารถบอกได้ว่าตอนนี้กลุ่ม Web technology เป็นตัวนำ เพราะเป็นหนึ่งในแพลตฟอร์มที่เริ่มมาก่อน ยุคภาษา Native อย่าง Objective-C หรือ Java สำหรับ Android

โดยผมมีการสรุปคร่าวๆ เกี่ยวกับบทสรุปของเทคโนโลยีในการทำแอพแบบ Cross Platform แบบง่ายๆ ซึ่งสามารถตามอ่านย้อนได้ด้านท้ายของบทความนี้

และในเรื่องนี้เอง พลจะขอพูดถึงหนึ่งในข่าวลือ ที่อาจจะกลายมาเป็นสัญญาณของการจบสงครามครั้งที่ 3 นี้ได้

“Google กำลังสนใจใน Swift” —  แหล่งข่าว

ไม่ว่าคุณจะเป็นนักพัฒนาสาย iOS หรือ Android วันนี้จะมีคำ 3 คำลอยไปทั่ว นั่นคือ “Swift, First class, และ Google for Android” (อ้างอิงแหล่งข่าวที่ยังไม่ยืนยันจาก The Next Web, App Advice, Mac Rumors, และ Android Central)

ซึ่งข่าวลือแค่นี้นั้น ก็เพียงพอที่จะกระพือกระแสข่าวไปทั่วอินเตอร์เน็ต โดยเฉพาะจากนักพัฒนาแอพพลิเคชั่น iOS สายภาษา Swift อยู่แล้ว เพราะถ้าเรื่องนี้เป็นจริง มันจะหมายถึงความสามารถที่ใช้ภาษาเดิมในการทำแอพ iOS ไปพัฒนาแอพ Android ได้

แน่นอนว่าพลก็สนใจเช่นเดียวกัน

เพราะว่าถ้า Google จะเดินไปในทางนี้จริงๆ มันต้องกลายเป็นหนึ่งในสุดยอดเทคโนโลยีสาย Cross Platform ที่นักพัฒนาแอพพลิเคชั่นหลายคนกำลังมองหาอยู่แน่ๆ

ความเป็นไปได้

ถ้า Google จะเดินไป เส้นทางนี้ ไม่ง่ายอย่างที่คิด

ถึงแม้ว่าผลลัพธ์สุดท้ายที่ทุกคนต้องการ คือการใช้ภาษา Swift ในการเขียนแอพพลิเคชั่น Android ได้ทั้งหมด รวมถึงการเรียกใช้ Library และ SDK ต่างๆ แต่จริงๆ แล้วมีความเป็นไปได้มากแค่ไหน?

2 จุดใหญ่ๆ ที่ Swift มีแต้มนำ Java ในปัจจุบันสำหรับฝั่ง Android ก็คือ

  • คดีความฟ้องร้องกับ Oracle +1
  • Swift เป็น Open-source อยู่แล้ว +1

แต่ในอีกด้าน ลึกๆ แล้วสิ่งที่สร้างมาดีพร้อมสำหรับ Java บน Android นั้นไม่ได้ออกแบบมาเพื่อเปลี่ยนไปใช้ภาษาหรือโครงสร้างอื่นในทันทีทันใด

เช่น Google อาจจำเป็นต้องมี Runtime สำหรับ Swift แบบเดียวกับที่เรามี Dalvik runtime ในปัจจุบัน รวมไปถึงการหาวิธีทำให้ Libraries และ SDK เดิมสามารถทำงานได้เต็มที่กับ Swift

และในอีกส่วนหนึ่ง API ในระดับ Low-level ถูกเขียนจาก C++ ซึ่งอาจต้องการการเขียนขึ้นใหม่เพื่อรองรับการใช้งานกับ Swift ได้เต็มที่

แต่ถ้านับความเป็นไปได้ ก็มีคนลองเล่นแนวคิดนี้บ้างแล้ว ชื่อ Romain Goyet, ได้ทดสอบรัน Swift บนระบบ Android NDK ในช่วงที่ Apple ประกาศ Open-source ภาษา Swift เป็นครั้งแรก

ดังนั้นมีความเป็นไปได้ไหม?

มีความเป็นไปได้ แต่เป็นเส้นทางสายยาวทีเดียว นี่ยังไม่นับศึก 2 มหาอำนาจระหว่าง Apple กับ Google

ไม่ใช่พลไม่เชียร์ให้เกิดภาษาศักดิ์สิทธิ์ 1 เดียวที่เขียนได้ทุกอย่างนะ แต่การเมือง และธุรกิจมันมีอะไรให้เซอร์ไพร้ส์เสมอ คิดว่า Apple กับ Google มันจะลงรอยจูบปากดูดดื่มกันง่ายขนาดนั้นไหมล่ะ

น่าคิดเนอะ

แล้วมันจะมาจบความวุ่นวายของศึก Cross Platform ไหม?

จวบจนวันนี้ โค้ชพลได้พูดถึงเครื่องมือ และ Framework ระดับแนวหน้า ที่แสดงตัวออกมาจากแต่ละขั้ว เหมือนนักรบในสนามประลอง อย่างที่กล่าวไว้ใน “ศึกครั้งที่ 3” ได้แก่

  • Ionic 2
  • NativeScript
  • React Native
  • Xamarin

ซึ่งแค่ละฝ่ายต่างมีจุดแข็งที่แกร่งของตัวเอง แต่ถ้า Swift ลงสู่สนามโดยมี Google เป็นพี่เลี้ยงอีกคน พลเชื่อว่าสถานการณ์จะเปลี่ยนทันที

เพราะถ้าเป็นแบบนั้น แรงส่งจะมาจากเจ้าของระบบ Android เลย ถ้าเปรียบ ก็คงเป็นนักรบตัวยักษ์ ที่เกิดจากพลัง 2 ขั้ว เดินลงสนามอย่างผ่าเผย

ตรงนี้ขอลองทายไว้แล้วกัน ออกหัวก้อยมาดูกันอีกที เพราะตอนนี้มันยังเป็นแค่ข่าวลือ

โอเค สรุปมันจะเกิดขึ้นจริงไหม?

ทุกๆ อย่างเป็นไปได้ในโลกทุกวันนี้ มีของใหม่ๆ และเครื่องมือใหม่ๆ เกิดขึ้นทุกวัน ยิ่งข่าวนี้คือการ “ลือ” เราก็ยังไม่ควรแตกตื่นไปก่อน

เพราะจริงๆ แล้วก็มีโครงการของ Google ที่เกิดขึ้นและแตกดับไปเยอะ ซึ่งแนวคิดการนำ Swift มาใช้เป็นภาษาหลักแทนที่ Java เป็นการขยับตัวครั้งใหญ่ที่น่าสนใจ และเราควรรอทิศทางที่แน่นอนจาก Google

ซึ่งอาจจะมีเซอร์ไพร้สจาก Google I/O 2016 ก็ได้

สามารถแบ่งปันเรื่องราวนี้ได้ตามอัธยาศัย และสนทนากับพลได้ใน Comment ด้านล่างนะครับ

เริ่มต้นยุค AI ด้วยคอร์สฟรี และพรีเมี่ยม กับพล

หากชอบสิ่งที่พลเล่า เรื่องที่พลสอน สามารถสนับสนุนพลโดยการเข้าเรียนคอร์สออนไลน์ของพลนะคร้าบ

  • เข้าใจง่าย ใช้ได้จริง ออกแบบการสอนอย่างเข้าใจโดยโค้ชพล
  • มีคอร์สสำหรับคนใช้งานทั่วไป จนถึงเรียนรู้เพื่อใช้งานในสายอาชีพขั้นสูง
  • ทุกคอร์สมีใบประกาศณียบัตรรับรองหลังเรียนจบ

เราใช้คุกกี้เพื่อพัฒนาประสิทธิภาพ และประสบการณ์ที่ดีในการใช้เว็บไซต์ของคุณ คุณสามารถศึกษารายละเอียดได้ที่ นโยบายความเป็นส่วนตัว และสามารถจัดการความเป็นส่วนตัวเองได้ของคุณได้เองโดยคลิกที่ ตั้งค่า

Privacy Preferences

คุณสามารถเลือกการตั้งค่าคุกกี้โดยเปิด/ปิด คุกกี้ในแต่ละประเภทได้ตามความต้องการ ยกเว้น คุกกี้ที่จำเป็น

Allow All
Manage Consent Preferences
  • Always Active

Save