ภาษา Swift คือ ภาษาสำหรับการเขียนโปรแกรมสมัยใหม่ที่ถูกแนะนำให้นักพัฒนาทั่วโลกได้รู้จักในงาน WWDC 2014 โดยบริษัทแอปเปิล ซึ่งเป็นภาษาที่มีความโดดเด่นในเรื่องของการที่นักพัฒนาสามารถเรียนรู้และใช้งานได้ง่าย สามารถนำมาใช้เพื่อการพัฒนาแอปพลิเคชันสำหรับอุปกรณ์ iOS, iPadOS, macOS, tvOS และ watchOS สำหรับส่วนแรก: การเตรียม Hardware และ Software สำหรับใช้ในการพัฒนาในการเรียนรู้การเขียนคำสั่งด้วยภาษา Swift นั้น เราจะเริ่มต้นด้วยการจัดเตรียมเครื่องไม้ เครื่องมือ อุปกรณ์ และโปรแกรมที่จำเป็นต้องใช้งานกันก่อนนะครับ ซึ่งประกอบด้วยเครื่องคอมพิวเตอร์ส่วนบุคคลซึ่งทำงานบนระบบปฏิบัติการ macOS รุ่นล่าสุด (ใครใช้ Windows หมดสิทธิ์)บัญชีผู้ใช้งาน Apple ID ซึ่งสามารถสมัครได้ที่ https://appleid.apple.com/ สำหรับใช้ดาวน์โหลดโปรแกรมโปรแกรม Xcode รุ่นล่าสุด ดาวน์โหลดได้จาก App Store หรือ https://developer.apple.com/xcode/เครื่อง iPad, iPhone, AppleTV หรือ Apple Watch (หากต้องการทดสอบการทำงานบนอุปกรณ์จริง)เครดิตภาพ: Mac App Store (เข้าถึงได้จาก https://apps.apple.com/us/app/xcode/id497799835) เมื่อดาวน์โหลด Xcode จาก App Store มาติดตั้งบนเครื่องเรียบร้อยแล้ว (ไฟล์ใหญ่โคตร ! บ้านใครเน็ตไม่แรง มีดาวน์โหลดเป็นชั่วโมงแน่นอน) เรามาลองสร้างแอปพลิเคชันแรกของเราที่ชื่อว่า "MyFirstApp" กันตามคลิปวิดีโอด้านล่างได้เลยครับเครดิตวิดีโอ: การพัฒนา iOS Application ด้วย Xcode โดย อ.ธิติ ธีระเธียร (ช่อง Everyone Can Code with Swift)ในส่วนที่ 2: การใช้ Playground ในการสร้างชุดคำสั่งภาษา Swift และดูผลลัพธ์จากการทำงานเครดิตภาพ: อ.ธิติ ธีระเธียร จับภาพหน้าจอจากโปรแกรม Xcode "Playground" เป็นเครื่องมือสำหรับฝึกหรือทดลองเขียนชุดคำสั่งที่มีระบบโต้ตอบแบบอัตโนมัติ และสามารถแสดงผลลัพธ์ของคำสั่งแบบทันทีในส่วน Liveview รวมทั้งมีระบบตรวจสอบความถูกต้องของไวยากรณ์และคำแนะนำในการแก้ไขมาให้ ทำให้เราสามารถเรียนรู้การเขียนคำสั่งภาษา Swift ได้อย่างสนุกสนานเครดิตภาพ: อ.ธิติ ธีระเธียร จับภาพหน้าจอจากโปรแกรม Xcodeเราสามารถสร้าง Playground ใหม่ขึ้นมาได้ง่ายๆ ดังนี้ เลือกที่ File > New > Playground... เลือกที่ iOS และเลือกประเภทไฟล์เป็น Blank จากนั้นคลิกที่ปุ่ม Nextตั้งชื่อไฟล์ว่า "HelloWorld" แล้วคลิกที่ปุ่ม Saveเครดิตภาพ: อ.ธิติ ธีระเธียร จับภาพหน้าจอจากโปรแกรม Xcodeทดลองเขียนคำสั่งแรกพิมพ์คำสั่ง print("Hello, World!") ในบรรทัดที่ 4คลิกที่ปุ่ม run (เครื่องหมาย play สีฟ้า)สังเกตว่าจะมีการแสดงผลการทำงานที่ด้านล่างของโปรแกรมในส่วน Console/Debug Areaทดลองแก้ไขคำสั่ง print("Hello, World!") เป็น print(str)คลิกที่ปุ่ม run แล้วสังเกตผลลัพธ์ที่เกิดขึ้นผลลัพธ์: คำสั่ง print(str) เป็นการสั่งให้พิมพ์ค่าที่เก็บอยู่ในตัวแปร ชื่อ strดังนั้น โปรแกรมจะแสดงข้อความ Hello, playground ออกมาในส่วน Console/Debug Area ในส่วนสุดท้าย เราลองมาใช้ Playground ในการสร้างชุดคำสั่งภาษา Swift เพื่อทำความเข้าใจเกี่ยวกับการใช้งาน ค่าคงที่ (Constants) ตัวแปร (Variables) และประเภทของข้อมูล (Data Type) กันนะครับการสร้าง (ซึ่งโปรแกรมเมอร์มักใช้คำว่า "ประกาศ" แทนคำว่า "สร้าง") ค่าคงที่หรือตัวแปรขึ้นในการเขียนโปรแกรมนั้น เป็นการกำหนดชื่อที่ใช้เพื่อการอ้างอิงถึงพื้นที่ของหน่วยความจำ (Ram) ที่ใช้เก็บข้อมูลสำหรับการประมวลผลเครดิตภาพ: อ.ธิติ ธีระเธียร จับภาพหน้าจอจากโปรแกรม Xcode บรรทัดที่ 3 เป็นการประกาศค่าคงที่ (กำกับด้วยคีย์เวิร์ด let) และตั้งชื่อว่า "pi" รวมทั้งกำหนดให้เก็บค่า 3.14โดยค่าคงที่นั้น เมื่อกำหนดค่าที่จัดเก็บแล้วจะไม่สามารถเปลี่ยนแปลงได้ ดังนั้น pi จึงเท่ากับ 3.14 เสมอจะเห็นว่ามี error เกิดขึ้น เมื่อเราหากพยายามจะเปลี่ยนแปลงค่า pi จาก 3.14 เป็น 9.75บรรทัดที่ 6 เป็นการประกาศตัวแปร (กำกับด้วยคีย์เวิร์ด var) และตั้งชื่อว่า "myAge" รวมทั้งกำหนดให้เก็บค่า 40ตัวแปรมีความแตกต่างจากค่าคงที่ ตรงเราสามารถเปลี่ยนแปลงหรือกำหนดให้จัดเก็บค่าใหม่ได้ตัวอย่างในบรรทัดที่ 7 ค่าที่ถูกเก็บอยู่ใน myAge จะสามารถเปลี่ยนแปลงจาก 40 เป็น 60 ได้เครดิตภาพ: อ.ธิติ ธีระเธียร จับภาพหน้าจอจากโปรแกรม Xcode สำหรับประเภทของข้อมูลพื้นฐานในภาษา Swift ที่เราควรรู้จักนั้น แบ่งออกเป็นข้อมูลประเภทข้อความ (String)ข้อมูลประเภทตัวเลขจำนวนเต็ม (Int)ข้อมูลประเภทตัวเลขทศนิยม (Double)ข้อมูลประเภทตรรกะหรือบูลีน (Bool)โดยเราสามารถพิมพ์คำสั่งที่ใช้ กำกับประเภทของข้อมูล (Type annotation) ที่จะถูกจัดเก็บลงในหน่วยความจำนั้น ต่อท้ายชื่อตัวแปรหรือค่าคงที่ เพื่อช่วยให้ Source Code ของเรามีความชัดเจนและอ่านง่ายขึ้น เช่น var playerAge: Int การระบุคีย์เวิร์ด Int ต่อท้ายชื่อตัวแปร คือ การกำกับว่าข้อมูลที่จะถูกจัดเก็บในตัวแปรนี้ได้ จะต้องเป็นข้อมูลประเภทตัวเลขจำนวนเต็ม (Integer) เท่านั้นสำหรับการจัดเก็บข้อมูลประเภทข้อความนั้น ข้อความที่เก็บลงในค่าคงที่หรือตัวแปรจะต้องเขียนอยู่ภายใต้เครื่องหมาย " " เสมอการทำงานกับค่าคงที่และตัวแปรในภาษา Swift นั้น จะมีคุณสมบัติสำคัญซึ่งนักพัฒนาจะต้องรับทราบอยู่ 3 ประการ ดังต่อไปนี้ประการแรก: ภาษา Swift มีคุณสมบัติ Case sensitive ดังนั้น การพิมพ์คำสั่งหรือตั้งชื่อด้วยการใช้ตัวพิมพ์ใหญ่หรือตัวพิมพ์เล็กนั้น จึงมีความแตกต่างกัน เช่น คำสั่งในบรรทัดที่ 3 และ 4 การตั้งชื่อตัวละครว่า playerName กับ PlayerName จึงเป็นคนละตัวกันประการที่สอง: ภาษา Swift มีคุณสมบัติ Type inference จึงสามารถกำหนดประเภทของข้อมูลให้กับค่าคงที่หรือตัวแปรแบบอัตโนมัติได้โดย Xcode จะวิเคราะห์จากประเภทของค่าตั้งต้นที่ถูกจัดเก็บ ดังนั้น ค่าคงที่ ชื่อ "pi" ในตัวอย่างแรก ซึ่งเก็บค่าเริ่มต้นเป็น 3.14 จึงถูกกำหนดให้เก็บข้อมูลประเภทตัวเลขทศนิยม (Double) ทันที โดยที่เราไม่ต้องพิมพ์กำกับไว้ท้ายชื่อของค่าคงที่ประการที่สาม: ภาษา Swift มีคุณสมบัติ Type Safety ซึ่งจะมีการตรวจสอบความถูกต้องในการสร้างและใช้งานประเภทของข้อมูล โดย Xcode จะแจ้งเตือนเราทันทีเมื่อมีการกำหนดค่าให้กับตัวแปรที่มีประเภทของข้อมูลไม่ตรงกัน ดังแสดงในบรรทัดที่ 7 ซึ่งมีข้อความ error แจ้งขึ้นมาว่า เราไม่สามารถกำหนดค่า 42.5 (ซึ่งเป็นข้อมูลประเภทตัวเลขทศนิยม)ให้ตัวแปร playerAge ที่เก็บข้อมูลประเภทตัวเลขจำนวนเต็มได้ เครดิตภาพ: อ.ธิติ ธีระเธียร จับภาพหน้าจอจากโปรแกรม Xcode อย่างไรก็ตาม เมื่อมี Error เกิดขึ้น เราสามารถคลิกที่จุดสีแดงหน้าข้อความเตือน เพื่อให้ Xcode แสดงแนวทางในการแก้ไข (Fix) ขึ้นมาได้ ทำให้การเขียนโปรแกรมนั้นสนุกขึ้น จากตัวอย่าง เราจะสามารถแก้ไข Error ในบรรทัดที่ 7 ได้ โดยกดปุ่ม Fix เพื่อแก้ไขคำสั่งจาก playerAge = 42.5 เป็น playerAge = Int(42.5)เครดิตภาพ: อ.ธิติ ธีระเธียร จับภาพหน้าจอจากเว็บไซต์ https://ajthiti.gitbook.io/swift/ สำหรับผู้เริ่มต้นศึกษาการเขียนโปรแกรมด้วยภาษา Swift สามารถศึกษาไวยากรณ์และตัวอย่างคำสั่งต่างๆ ต่อยอดในหัวข้อต่างๆ ดังนี้ค่าคงที่ ตัวแปร และประเภทของข้อมูล ศึกษาได้จาก Constants, Variables and Typesตัวดำเนินการ ศึกษาได้จาก Operatorsการจัดการกับตัวเลข ศึกษาได้จาก Numberการจัดการกับข้อความ ศึกษาได้จาก Stringแล้วพบกับการเรียนรู้ เรื่อง Control Flow และ Function ซึ่งจะถูกใช้ประโยชน์ในการสร้าง iOS App สำหรับการแปลงค่าอุณหภูมิได้ จากบทความ เรื่อง การพัฒนา iOS Application ด้วยภาษา Swift และ Xcode ตอนที่ 2 นะครับ