Computer >> คอมพิวเตอร์ >  >> ระบบ >> MAC

วิธีสร้างแอพด้วย Swift 5 บน Mac

Swift เป็นภาษาโปรแกรมที่ใช้เขียนแอพและเกมสำหรับ iPhone, iPad, Mac, Apple Watch และอื่นๆ Apple ออกแบบ Swift อย่างชัดเจนเพื่อให้ได้ประสิทธิภาพที่รวดเร็วและมีประสิทธิภาพสูงสุดจากอุปกรณ์ต่างๆ และ Swift 5 ก็ขยายตามชุดคุณสมบัติที่น่าประทับใจอยู่แล้ว ในบทความนี้ เราจะแสดงวิธีใช้ Swift 5 อธิบายว่าทำไมคุณจึงควร และสรุปคุณลักษณะใหม่ทั้งหมดในภาษาเวอร์ชันนี้

หากคุณต้องการเข้าร่วม ให้ข้ามไปที่วิธีเริ่มต้นใช้งาน Swift 5 และสำหรับภาพรวมที่กว้างขึ้น โปรดดูคู่มือฉบับสมบูรณ์สำหรับการเขียนโปรแกรม Mac ซึ่งจะกล่าวถึงภาษาการเขียนโปรแกรมต่างๆ ที่คุณสามารถใช้ได้ใน macOS

ภาพรวมของ Swift 5

Swift 5 เป็นภาษาโปรแกรมที่พัฒนาโดย Apple ซึ่งช่วยให้นักพัฒนาสร้างแอปสำหรับ iOS, macOS, tvOS และ watchOS ได้

เวอร์ชันที่ห้าเปิดตัวพร้อมกับ Xcode 10.2 ในเดือนมีนาคม 2019 - เราพูดถึงคุณสมบัติใหม่ใน Swift 5 ในส่วนต่อมา - แต่ภาษา Swift นั้นมีมาระยะหนึ่งแล้ว:Swift 1.0 เปิดตัวในเดือนกันยายน 2014 ตามที่ Apple , Swift เร็วกว่า Objective C สูงสุด 2.6 เท่า และเร็วกว่า Python สูงสุด 8.4 เท่า

เหตุใดคุณจึงควรเขียนโค้ดใน Swift 5

1) Swift เป็น โอเพ่นซอร์ส . โดยทั่วไปแล้ว โอเพ่นซอร์สหมายความว่าซอร์สโค้ดที่อยู่เบื้องหลังโปรแกรมหรือภาษาโปรแกรมนั้นถูกเผยแพร่ต่อสาธารณชนทั่วไป ผู้เขียนโค้ดสามารถตรวจสอบ แก้ไข และปรับใช้โปรแกรมได้ทุกที่ที่ต้องการ

หน้าโอเพ่นซอร์สของ Apple กล่าวว่า:"Apple เชื่อว่าการใช้วิธีการแบบโอเพ่นซอร์สทำให้ macOS เป็นระบบปฏิบัติการที่ปลอดภัยและแข็งแกร่งยิ่งขึ้น เนื่องจากส่วนประกอบหลักอยู่ภายใต้การตรวจสอบจากเพื่อนตลอดหลายทศวรรษ"

2) Swift เรียนรู้ได้ง่าย . Apple สร้างภาษาให้ใช้งานง่าย เป็นภาษาในอุดมคติสำหรับผู้เริ่มต้น เนื่องจากไวยากรณ์เข้าใจง่าย หากคุณเคยพัฒนาซอฟต์แวร์มาก่อน คุณจะพบว่ารูปแบบและแนวคิดของ Swift ใกล้เคียงกับที่คุณใช้อยู่แล้ว

3) Swift เร็ว . Apple อ้างว่าอัลกอริธึมการค้นหาใน Swift นั้นสมบูรณ์เร็วกว่า Objective-C สูงสุด 2.6 เท่า และเร็วกว่า Python สูงสุด 8.4 เท่า

4) Swift ปลอดภัย . เมื่อคุณทำงานกับภาษานั้น คุณไม่ควรพบโค้ดที่ไม่ปลอดภัยใดๆ และจะใช้รูปแบบการเขียนโปรแกรมที่ทันสมัยเพื่อช่วยรักษาความปลอดภัยที่จำเป็นในแอปของคุณ

5) สนามเด็กเล่น . Xcode มาพร้อมกับคุณสมบัติที่เรียกว่า Playgrounds ซึ่งโปรแกรมเมอร์ Swift 5 สามารถเขียนโค้ดและดูผลลัพธ์ได้ทันที นี่คือวิธีใช้ Swift Playgrounds

6) Swift 5 นั้นพิสูจน์ได้ในอนาคต และให้คุณพัฒนาสำหรับแพลตฟอร์มต่างๆ ได้มากมาย:iOS, macOS, watchOS และ tvOS

7) Swift พัฒนาอย่างต่อเนื่อง กับทุกการอัพเดท Swift 5 นำความเสถียรของ ABI ที่รอคอยมายาวนาน ซึ่งหมายความว่าคอมไพเลอร์ Swift ในอนาคตจะสามารถคอมไพล์โค้ดที่เขียนใน Swift 5 ขึ้นไป และการย้ายโค้ดไปยัง Swift เวอร์ชันใหม่กว่าจะทำให้นักพัฒนารู้สึกเจ็บปวดน้อยลง นอกจากนี้ยังหมายความว่าผู้จำหน่าย OS จะสามารถฝัง Swift Standard Library ลงในระบบปฏิบัติการได้ และจะเข้ากันได้กับแอปพลิเคชันทั้งหมดที่สร้างด้วย Swift 5 และเวอร์ชันที่ใหม่กว่า

เราน่าจะได้ยินการพัฒนาอย่างรวดเร็วมากขึ้นที่ WWDC 2019

วิธีเริ่มต้นใช้งาน Swift 5

ในการพัฒนาแอพสำหรับ iOS คุณจะต้องมี Mac (MacBook, iMac หรือ Mac mini) และซอฟต์แวร์ฟรีที่เรียกว่า Xcode (เวอร์ชัน 10.2 ขึ้นไป) ทำตามขั้นตอนด้านล่างเพื่อเริ่มต้น:

  1. เปิด Mac App Store บนเดสก์ท็อปของคุณ
  2. ค้นหา 'Xcode' ในแถบค้นหา
  3. คลิก 'รับ' ข้างไอคอน Xcode
  4. คุณยังค้นหา Xcode ได้ใน Mac App Store ในเบราว์เซอร์ของคุณ

วิธีสร้างแอพด้วย Swift 5 บน Mac

คอมไพเลอร์ออนไลน์

หากคุณไม่ได้วางแผนที่จะปรับใช้แอพของคุณ คุณสามารถใช้ Swift online complier ได้ตลอดเวลา นี่เป็นวิธีที่ยอดเยี่ยมในการเรียนรู้และรันโค้ด Swift

  • Online Swift Playground รองรับ Swift 5 และให้คุณทดสอบและรันโค้ดได้
  • Repl.it มีคอมไพเลอร์ออนไลน์ที่รองรับ Swift 4.2 ในขณะที่เขียน (พฤษภาคม 2019) แต่การอัปเดตจะครบกำหนดในเร็วๆ นี้

วิธีเขียนแอปอย่างง่ายใน Swift

เปิด Xcode แล้วเลือก ไฟล์> ใหม่> โครงการ . เลือก แอปมุมมองเดียว จากรายการเทมเพลต

วิธีสร้างแอพด้วย Swift 5 บน Mac

ป้อนชื่อแอปและชื่อองค์กร (อาจเป็นชื่อบริษัทหรือชื่อของคุณเองก็ได้) ตัวระบุองค์กรมักจะเป็น URL บริษัทของคุณในลำดับที่กลับกัน - ตัวอย่างเช่น com.mycompany.myapp .

เลือก Swift เป็นภาษา แล้วคลิก ถัดไป . สุดท้าย เลือกตำแหน่งบน Mac ที่คุณต้องการให้ Xcode สร้างโครงการ

วิธีสร้างแอพด้วย Swift 5 บน Mac

เมื่อสร้างโครงการคุณจะเห็นหน้าจอต่อไปนี้:

วิธีสร้างแอพด้วย Swift 5 บน Mac

ที่นี่ คุณจะได้พัฒนาแอปอย่างง่าย ซึ่งผู้ใช้สามารถป้อนชื่อของพวกเขาในช่องข้อความและรับคำทักทายง่ายๆ เมื่อพวกเขากดปุ่ม

ในการเริ่มต้น ให้ไปที่ Main.storyboard ไฟล์ในบานหน้าต่างด้านซ้าย คุณจะเห็นมุมมองที่ว่างเปล่าปรากฏขึ้น คลิกปุ่มกลมที่มุมบนขวาเพื่อเปิดไลบรารีวัตถุ ลากช่องข้อความ ป้ายชื่อ และปุ่มไปที่มุมมอง

วิธีสร้างแอพด้วย Swift 5 บน Mac

วิธีสร้างแอพด้วย Swift 5 บน Mac

เลือกปุ่มในมุมมองลำดับชั้นและตั้งชื่อเป็น "สร้างคำทักทาย" ในพื้นที่ยูทิลิตี้ทางด้านขวามือ

วิธีสร้างแอพด้วย Swift 5 บน Mac

ดับเบิลคลิกที่ ViewController.swift ไฟล์. จะเปิดในหน้าต่างแยกต่างหาก

ตอนนี้เลือกฟิลด์ข้อความในมุมมองและกด Ctrl . ค้างไว้ แล้วลากไปที่ด้านบนของ ViewController ระดับ. คุณจะได้รับแจ้งให้สร้าง IBOutlet สำหรับฟิลด์ข้อความ เรียกมันว่า "textField"

วิธีสร้างแอพด้วย Swift 5 บน Mac

ทำเช่นเดียวกันกับป้ายกำกับและตั้งชื่อ IBOutlet "label" คุณจะต้องทำเช่นเดียวกันกับปุ่ม แต่แทนที่จะลากไปที่ด้านบนของ ViewController ให้ลากไปด้านล่างเพื่อสร้างวิธีการ IBAction ตั้งชื่อวิธีการ "buttonTapped"

IBOutlets ใช้เพื่อเข้าถึงการควบคุมในกระดานเรื่องราวในโค้ดของเรา และวิธีการ IBAction ใช้สำหรับตอบสนองต่อเหตุการณ์ของปุ่ม เช่น การแตะ

เพิ่มรหัสต่อไปนี้ใน buttonTapped วิธีการของ ViewController . ของคุณ คลาส:

ถ้าให้ชื่อ =textField.text {
self.label.text ="สวัสดี " + ชื่อ
}

นี่คือลักษณะของไฟล์ ViewController.swift หลังจากการเปลี่ยนแปลงเหล่านี้:

วิธีสร้างแอพด้วย Swift 5 บน Mac

ตอนนี้คุณพร้อมที่จะเรียกใช้แอปแล้ว กดปุ่มเรียกใช้ แล้วแอปจะเปิดขึ้นบนเครื่องจำลอง

เมื่อผู้ใช้เพิ่มชื่อลงในช่องข้อความและแตะปุ่ม ป้ายกำกับที่ด้านล่างจะแสดงคำว่า "สวัสดี" พร้อมกับชื่อที่ป้อน

วิธีสร้างแอพด้วย Swift 5 บน Mac

แนวคิด Swift 5 (พื้นฐานและขั้นสูง)

เราได้สร้างแอพที่เรียบง่าย ตอนนี้ มาดูวิธีการและข้อมูลโค้ดบางส่วนที่คุณสามารถใช้ได้ในโครงการแอปของคุณเอง

การพิมพ์ข้อความในภาษา Swift

พิมพ์("สวัสดีชาวโลก!")

การกำหนดตัวแปร

ใช้ 'let' เพื่อสร้างค่าคงที่และ 'var' เพื่อกำหนดตัวแปร ค่าคงที่ไม่สามารถเปลี่ยนแปลงได้เมื่อกำหนดแล้ว ค่าของตัวแปรสามารถเปลี่ยนแปลงได้ ผู้ใช้ไม่จำเป็นต้องเขียนประเภทอย่างชัดเจนเสมอไป การระบุค่าเมื่อคุณสร้างค่าคงที่หรือตัวแปรช่วยให้คอมไพเลอร์สรุปประเภทของมันได้

ให้ constVar =42
var numberVar =27

นักพัฒนายังสามารถระบุประเภท ในตัวอย่างด้านล่าง เรากำลังประกาศจำนวนเต็ม

var numberVar:Int =27

คอมเมนต์เป็นภาษา Swift

ความคิดเห็นในภาษา Swift แบ่งออกเป็น 2 ประเภท

บรรทัดเดียว:

//นี่คือความคิดเห็น

ความคิดเห็นหลายบรรทัด:

/* นี่คือ
ความคิดเห็นหลายบรรทัด */

การตัดสินใจอย่างรวดเร็ว

ไวยากรณ์ของ คำสั่ง if ใน Swift มีดังนี้:

ถ้า boolean_expression {
/* คำสั่งจะดำเนินการหากนิพจน์บูลีนเป็นจริง */
}

ตัวอย่างเช่น:

วิธีสร้างแอพด้วย Swift 5 บน Mac

ไวยากรณ์ของ คำสั่ง if...else ใน Swift 5 มีดังนี้:

ถ้า boolean_expression {
/* คำสั่งจะดำเนินการหากนิพจน์บูลีนเป็นจริง */
} อื่น ๆ {
/* คำสั่งจะดำเนินการหากนิพจน์บูลีนเป็นเท็จ */
}

ตัวอย่างเช่น:

วิธีสร้างแอพด้วย Swift 5 บน Mac

ไวยากรณ์ของ if...else if...else statement ใน Swift 5 มีดังนี้:

ถ้า boolean_expression_1 {
/* ดำเนินการเมื่อนิพจน์บูลีน 1 เป็นจริง */
} else if boolean_expression_2 {
/* ดำเนินการเมื่อนิพจน์บูลีน 2 เป็นจริง */
} else if boolean_expression_3 {
/* ดำเนินการเมื่อนิพจน์บูลีน 3 เป็นจริง */
} อื่น ๆ {
/* ทำงานเมื่อไม่มีเงื่อนไขข้างต้นเป็นจริง */
}

ตัวอย่างเช่น:

วิธีสร้างแอพด้วย Swift 5 บน Mac

เปลี่ยนคำสั่ง

ต่อไปนี้คือรูปแบบทั่วไปของคำสั่ง switch ที่มีอยู่ใน Swift 5 ในที่นี้ หากมีการใช้ fallthrough การดำเนินการในกรณีถัดไปจะดำเนินการต่อไป และจากนั้นจะออกจากคำสั่ง Switch

เปลี่ยนนิพจน์ {
นิพจน์กรณี1 :
คำชี้แจง
fallthrough /* ทางเลือก */
กรณี expression2, expression3 :
คำชี้แจง
fallthrough /* ทางเลือก */
ค่าเริ่มต้น :/* ไม่บังคับ */
คำสั่ง);
}

ตัวอย่างเช่น:

วิธีสร้างแอพด้วย Swift 5 บน Mac

อาร์เรย์

สร้างอาร์เรย์และพจนานุกรมโดยใช้วงเล็บเหลี่ยม - เช่น [ และ ] - และเข้าถึงองค์ประกอบโดยการเขียนดัชนีหรือคีย์ในวงเล็บ บรรทัดต่อไปนี้สร้างอาร์เรย์

var arrayList =["Swift", "JavaScript", "Java", "PHP"]

ในการเข้าถึงและแก้ไของค์ประกอบที่สองของอาร์เรย์ เราสามารถเขียนโดยตรงว่า:

arrayList[2] ="ตอบสนองพื้นเมือง"

หากต้องการสร้างอาร์เรย์ว่าง ให้ใช้ไวยากรณ์เริ่มต้น

var emptyArray =[สตริง]()
emptyArray =[]

พจนานุกรม

var careers =["สตีฟ":"ผู้พัฒนา", "เคท":"นักออกแบบ",]

ในการเข้าถึงและแก้ไขค่าใดๆ สำหรับพจนานุกรม เราสามารถเขียนได้โดยตรง:

อาชีพ["สตีฟ"] ="CTO"

หากต้องการสร้างพจนานุกรมเปล่า ให้ใช้ไวยากรณ์เริ่มต้น

อาชีพ =[:]

ชุด

ชุดใน Swift คล้ายกับอาร์เรย์แต่มีค่าเฉพาะเท่านั้น

var a :Set =[1,2,3,4,5,6,7,8,9,0]

Swift ยังแนะนำประเภท Optionals ซึ่งจัดการการไม่มีค่า ตัวเลือกบอกว่า "มีค่าหนึ่งและเท่ากับ x" หรือ "ไม่มีค่าเลย" คุณสามารถกำหนดตัวเลือกด้วย '?' หรือ '!'

var myString:String?

'?' หมายถึงค่าสามารถมีหรือไม่มีก็ได้

'!' หมายความว่าค่าสามารถเป็นศูนย์ในขั้นต้น แต่ในอนาคตเมื่อใช้งานจะต้องมีค่า มิฉะนั้นจะทำให้เกิดข้อผิดพลาดรันไทม์

ไม่มีเครื่องหมายหมายความว่าตัวแปรนี้ไม่มีทางเลือก และจำเป็นต้องกำหนดค่า มิฉะนั้นจะทำให้เกิดข้อผิดพลาดของคอมไพเลอร์

ฟังก์ชัน

ต่อไปนี้เป็นไวยากรณ์ในการสร้างฟังก์ชันใน Swift:inputNum คือชื่อพารามิเตอร์ตามด้วย DataType 'createStr' คือชื่อของฟังก์ชัน '-> สตริง' หมายถึงประเภทการส่งคืน ฟังก์ชันใช้จำนวนเต็มเป็นอินพุตและแปลงเป็นสตริงแล้วคืนค่ากลับมา

func createStr(Number inputNum :Int) -> String
{
ส่งคืน "\(inputNum)"
}

สามารถเรียกใช้ฟังก์ชันโดยใช้ไวยากรณ์ด้านล่าง:

createStr(หมายเลข:345)

คลาส

ต่อไปนี้เป็นรูปแบบการสร้าง Class Car มีตัวแปรสมาชิกทางเลือก numOfPersons และฟังก์ชัน displayDetails()

คลาสคาร์
{
var numOfPersons :Int?
func displayDetails() {
}
}

สามารถสร้างอินสแตนซ์ของคลาสได้โดยใช้บรรทัดด้านล่าง:

var myCar :Car =Car()

ตัวแปร 'numOfPersons' สามารถเริ่มต้นได้ดังนี้:

myCar.numOfPersons =5

ปิดใน Swift

การปิดเป็นฟังก์ชันที่ไม่ระบุชื่อซึ่งจัดเป็นบล็อกและเรียกได้ทุกที่ เช่น ภาษา C และ Objective-C การปิดสามารถกำหนดให้กับตัวแปรได้ ต่อไปนี้เป็นไวยากรณ์ของการปิดใน Swift

{
(พารามิเตอร์) −> ประเภทการส่งคืนใน
แถลงการณ์
}

ด้านล่างนี้เป็นตัวอย่างง่ายๆ ที่นี่เรากำลังกำหนดการปิดตัวแปร scname . จากนั้นในบรรทัดถัดไป เราจะเรียกการปิดโดยเรียกชื่อตัวแปร

วิธีสร้างแอพด้วย Swift 5 บน Mac

ส่วนขยาย

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

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

วิธีสร้างแอพด้วย Swift 5 บน Mac

ทูเพิลส์

ชนิดทูเพิลใช้เพื่อจัดกลุ่มค่าหลายค่าในค่าผสมเดียว นี่คือไวยากรณ์ของการประกาศทูเปิล:

var TupleName =(ค่า 1, ค่า 2,… จำนวนค่าใดก็ได้)

นี่คือคำประกาศของทูเปิล:

var error501 =(501 "ไม่ได้ใช้งาน")

ฟีเจอร์ใหม่ใน Swift 5

มาดูองค์ประกอบใหม่ใน Swift 5 แบบละเอียดกัน

Raw Strings

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

หากต้องการใช้สตริงดิบ คุณจะต้องเพิ่ม # ที่จุดเริ่มต้นและจุดสิ้นสุดของสตริง:

วิธีสร้างแอพด้วย Swift 5 บน Mac

เนื่องจากแบ็กสแลชในสตริงดิบถูกตีความว่าเป็นสัญลักษณ์ตามตัวอักษร หากต้องการใช้การแก้ไขสตริงในสตริงดิบ คุณต้องเพิ่มอีก # หลังเครื่องหมายแบ็กสแลช:

วิธีสร้างแอพด้วย Swift 5 บน Mac

หากคุณต้องการใช้ "# เรียงลำดับกันภายในสตริงดิบที่คุณต้องเพิ่ม ## ที่จุดเริ่มต้นและจุดสิ้นสุดของสตริง:

วิธีสร้างแอพด้วย Swift 5 บน Mac

การหาจำนวนเต็มทวีคูณ

ใน Swift 4.2 และเวอร์ชันก่อนหน้า หากต้องการค้นหาว่าตัวเลขใดเป็นผลคูณของอีกจำนวนหนึ่ง คุณจะต้องใช้ตัวดำเนินการโมดูโล (%) ตอนนี้ใน Swift 5 มีวิธีการเฉพาะ ซึ่งทำให้โค้ดชัดเจนยิ่งขึ้น:

วิธีสร้างแอพด้วย Swift 5 บน Mac

การจัดการกับกรณี enum ในอนาคต

คำสั่ง Switch ใน Swift จะต้องครบถ้วนสมบูรณ์เสมอ ซึ่งหมายความว่าคุณต้องจัดการกับ enum case ทั้งหมดหรือจัดการเฉพาะ case เฉพาะด้วยการเพิ่ม default กรณีที่จัดการกรณีอื่นๆ ทั้งหมด:

วิธีสร้างแอพด้วย Swift 5 บน Mac

ปัญหาของแนวทางนี้คือหากในอนาคตผู้พัฒนาตัดสินใจที่จะเพิ่มเคสอื่นใน enum คอมไพเลอร์จะไม่มีการเตือนว่ามีการเพิ่มเคสใหม่ ซึ่งหมายความว่ากรณีใหม่จะได้รับการจัดการโดยค่าเริ่มต้น ซึ่งไม่ใช่สิ่งที่ต้องการเสมอไป

เพื่อแก้ไขปัญหานี้ @unknown . ใหม่ เพิ่มแอตทริบิวต์ใน Swift 5 คุณใช้แอตทริบิวต์นี้ร่วมกับตัวพิมพ์เริ่มต้น

วิธีสร้างแอพด้วย Swift 5 บน Mac

ด้วย @unknown กรณีเริ่มต้นในคำสั่ง switch คอมไพเลอร์จะออกคำเตือนหากมีการเพิ่มกรณีใหม่ลงใน enum ในอนาคต ด้วยวิธีนี้ผู้พัฒนาสามารถตัดสินใจว่าจะจัดการกับคดีใหม่หรือไม่

ตัวเลือกที่ซ้อนกันแบบแบนราบ

ทางเลือกที่ซ้อนกันสามารถสร้างได้ด้วยการจัดการโค้ดที่ส่งโดยใช้ ลองไหม . ใน Swift 5 ตัวเลือกที่ซ้อนกันจะถูกทำให้แบนเป็นตัวเลือกปกติ ซึ่งตรงกับพฤติกรรมของการหล่อแบบมีเงื่อนไขและการเชื่อมโยงทางเลือก

วิธีสร้างแอพด้วย Swift 5 บน Mac

ในตัวอย่างข้างต้น คุณจะเห็นว่า รุ่น ตัวแปรเป็นประเภท String? และไม่ใช่ สตริง ?? เหมือนใน Swift 4.2

ประเภทผลลัพธ์ในไลบรารีมาตรฐาน

ใน Swift 5 ผลลัพธ์ เพิ่มประเภทลงในไลบรารีมาตรฐานแล้ว ผลลัพธ์ type ช่วยให้คุณจัดการข้อผิดพลาดในโค้ดแบบอะซิงโครนัสได้อย่างง่ายดายและสะอาด มันถูกนำไปใช้เป็น enum กับ ความสำเร็จ และ ความล้มเหลว กรณี ทั้งสองกรณีดำเนินการโดยใช้ข้อมูลทั่วไป ความสำเร็จ กรณีสามารถมีค่าที่เกี่ยวข้องได้ทุกประเภทในขณะที่ความล้มเหลว กรณีต้องมีค่าที่เกี่ยวข้องที่สอดคล้องกับ ข้อผิดพลาด มาตรการ. นี่คือตัวอย่างที่สาธิตการใช้ ผลลัพธ์ ประเภท:

วิธีสร้างแอพด้วย Swift 5 บน Mac

ในตัวอย่างข้างต้น เราได้ติดตั้ง ApiClient . อย่างง่าย ที่ดึงชื่อจาก URL โปรดทราบว่าพารามิเตอร์ที่สองใน fetchNames ฟังก์ชันคือการปิดเสร็จสมบูรณ์ที่ยอมรับ ผลลัพธ์ พิมพ์. ผลลัพธ์ พิมพ์ในตัวอย่างของเราโดยใช้ [String] สำหรับกรณีความสำเร็จและ ApiError สำหรับกรณีความล้มเหลว

ตอนนี้ เราสามารถใช้โค้ดด้านบนได้ดังนี้:

วิธีสร้างแอพด้วย Swift 5 บน Mac

คุณลักษณะอื่นๆ ใน Swift

เราดูคุณสมบัติใหม่ในเวอร์ชันล่าสุดใน Swift ในเวอร์ชันก่อนหน้า แต่ก็ยังคุ้มค่าที่จะรู้เกี่ยวกับคุณสมบัติที่ใช้งานได้จากเวอร์ชั่นเก่า นี่คือไฮไลท์บางส่วนที่เพิ่มเข้ามาใน Swift 4:

สตริง

สำหรับ Swift 4 นั้น String จะเป็นไปตามโปรโตคอลคอลเลคชัน และคุณสามารถวนซ้ำผ่าน String ได้โดยตรง นอกจากนี้ยังหมายความว่าคุณสามารถใช้วิธีการรวบรวมและคุณสมบัติบน String เช่น count, isEmpty, map(), filter(), index(of:) เป็นต้น

วิธีสร้างแอพด้วย Swift 5 บน Mac

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

วิธีสร้างแอพด้วย Swift 5 บน Mac

การเข้ารหัสและถอดรหัส JSON

Swift 4 ลดความซับซ้อนของกระบวนการเก็บถาวร JSON และการทำให้เป็นอนุกรมที่คุณเคยทำใน Swift 3 ตอนนี้ คุณเพียงแค่ทำให้ประเภทที่กำหนดเองของคุณใช้โปรโตคอล Codable ซึ่งรวมเอาทั้งแบบเข้ารหัสและแบบถอดรหัสได้

วิธีสร้างแอพด้วย Swift 5 บน Mac

เส้นทางคีย์ที่ชาญฉลาดยิ่งขึ้น

Swift 4 ช่วยให้เข้าถึงคุณสมบัติของวัตถุได้ง่ายขึ้นด้วยเส้นทางหลัก

วิธีสร้างแอพด้วย Swift 5 บน Mac

การผสมผสานคลาสกับโปรโตคอล

คุณสามารถรวมโปรโตคอลเข้าด้วยกันใน Swift 3 เมื่อสร้างค่าคงที่และตัวแปร Swift 4 ก้าวไปอีกขั้นหนึ่งและให้คุณเพิ่มคลาสให้กับมิกซ์โดยใช้ไวยากรณ์เดียวกัน คุณสามารถจำกัดอ็อบเจกต์บางอย่างให้กับคลาสและโปรโตคอลได้เพียงครั้งเดียวในลักษณะเดียวกับใน Objective-C

สลับกับ swapAt

swap(_:_:) วิธีการกลายพันธุ์ใน Swift 3 ใช้สององค์ประกอบของอาร์เรย์บางตัวและสลับกันทันที โซลูชันนี้มีข้อเสียเปรียบหลักประการหนึ่ง:องค์ประกอบที่สลับจะถูกส่งไปยังฟังก์ชันเป็นพารามิเตอร์อินพุตเพื่อให้สามารถเข้าถึงได้โดยตรง

Swift 4 ใช้แนวทางที่แตกต่างไปจากเดิมอย่างสิ้นเชิงโดยแทนที่วิธีการด้วย swapAt(_:_:) ซึ่งนำดัชนีที่สอดคล้องกันของทั้งสององค์ประกอบมาสลับกันเหมือนเมื่อก่อน

พจนานุกรมและเซต

คุณสามารถใช้ init(uniqueKeysWithValues:) ของพจนานุกรม initialiser เพื่อสร้างพจนานุกรมใหม่เอี่ยมจากอาร์เรย์ทูเพิล

วิธีสร้างแอพด้วย Swift 5 บน Mac

สถานที่ที่ดีที่สุดในการเรียนรู้เพิ่มเติมเกี่ยวกับการเขียนโปรแกรม Swift 5

มีแหล่งข้อมูลมากมายที่จะช่วยคุณเริ่มสร้างแอพโดยใช้ Swift 5 ตัวเลือกที่ดีที่สุดบางตัวอยู่ด้านล่าง:

เอกสารของ Apple: สถานที่ที่ดีที่สุดในการเรียนรู้ Swift 5 คือเอกสารประกอบอย่างเป็นทางการของ Apple สำหรับ Swift

eBook: Apple ได้เปิดตัว eBook เวอร์ชันล่าสุดซึ่งมีประโยชน์อย่างยิ่งในการเรียนรู้ Swift 5:The Swift Programming Language (Swift 5.0)

Udemy :บริการการเรียนรู้ผ่านวิดีโอออนไลน์ที่ใหญ่ที่สุดมีหลักสูตรหลายหลักสูตรที่ครอบคลุม Swift เวอร์ชันต่างๆ นี่คือบางส่วนที่ครอบคลุม Swift 5:

  • การเขียนโปรแกรม Swift 5 สำหรับผู้เริ่มต้น
  • iOS 12 &Swift 5:สร้างแอป To Do List

เขียนโปรแกรม Swift ในขั้นตอนง่ายๆ - ครอบคลุม iOS 12 และ Swift 5: หนังสือเล่มนี้ โดยผู้เขียนบทความนี้ จะสอนวิธีสร้างแอป iOS โดยใช้ Swift 5 ตั้งแต่เริ่มต้น และมีภาพประกอบครบถ้วน คุณสามารถรับสำเนาจาก Amazon

การแฮ็กด้วย Swift: วิธีที่ยอดเยี่ยมในการเรียนรู้เกี่ยวกับการพัฒนาด้วย Swift คือการใช้หนังสือบนเว็บไซต์ Hacking with Swift มันถูกดูแลโดย Paul Hudson ผู้พัฒนาและผู้ที่ชื่นชอบ Swift ที่ยอดเยี่ยม

เรามีแหล่งข้อมูลเพิ่มเติมในบทความแยก:วิธีเรียนรู้ Swift