Swift - ไวยากรณ์พื้นฐาน
เราได้เห็นส่วนหนึ่งของโปรแกรม Swift 4 ในขณะที่ตั้งค่าสภาพแวดล้อม มาเริ่มกันใหม่กับสิ่งต่อไปนี้Hello, World! โปรแกรมที่สร้างขึ้นสำหรับ OS X playground ซึ่งรวมถึง import Cocoa ดังแสดงด้านล่าง -
/* My first program in Swift 4 */
var myString = "Hello, World!"
print(myString)
หากคุณสร้างโปรแกรมเดียวกันสำหรับสนามเด็กเล่น iOS ก็จะรวมถึง import UIKit และโปรแกรมจะมีลักษณะดังนี้ -
import UIKit
var myString = "Hello, World!"
print(myString)
เมื่อเรารันโปรแกรมข้างต้นโดยใช้สนามเด็กเล่นที่เหมาะสมเราจะได้ผลลัพธ์ดังต่อไปนี้ -
Hello, World!
ตอนนี้ให้เราดูโครงสร้างพื้นฐานของโปรแกรม Swift 4 เพื่อให้คุณเข้าใจโครงสร้างพื้นฐานของภาษาโปรแกรม Swift 4 ได้อย่างง่ายดาย
นำเข้าใน Swift 4
คุณสามารถใช้ไฟล์ importคำสั่งเพื่อนำเข้าเฟรมเวิร์ก Objective-C (หรือไลบรารี C) ลงในโปรแกรม Swift 4 ของคุณโดยตรง ตัวอย่างเช่นข้างต้นimport cocoa คำสั่งทำให้ไลบรารี Cocoa, API และรันไทม์ทั้งหมดที่สร้างเลเยอร์การพัฒนาสำหรับ OS X ทั้งหมดพร้อมใช้งานใน Swift 4
Cocoa ถูกนำไปใช้ใน Objective-C ซึ่งเป็นส่วนเหนือของ C ดังนั้นจึงง่ายต่อการผสม C และแม้แต่ C ++ ในแอปพลิเคชัน Swift 4 ของคุณ
โทเค็นใน Swift 4
โปรแกรม Swift 4 ประกอบด้วยโทเค็นต่างๆและโทเค็นเป็นทั้งคีย์เวิร์ดตัวระบุค่าคงที่สตริงลิเทอรัลหรือสัญลักษณ์ ตัวอย่างเช่นคำสั่ง Swift 4 ต่อไปนี้ประกอบด้วยโทเค็นสามรายการ -
print("test!")
The individual tokens are:
print("test!")
ความคิดเห็น
ความคิดเห็นเป็นเหมือนการช่วยเหลือข้อความในโปรแกรม Swift 4 ของคุณ คอมไพเลอร์จะถูกละเว้น ความคิดเห็นหลายบรรทัดเริ่มต้นด้วย / * และสิ้นสุดด้วยอักขระ * / ดังที่แสดงด้านล่าง -
/* My first program in Swift 4 */
ความคิดเห็นหลายบรรทัดสามารถซ้อนอยู่ใน Swift 4 ต่อไปนี้เป็นความคิดเห็นที่ถูกต้องใน Swift 4 -
/* My first program in Swift 4 is Hello, World!
/* Where as second program is Hello, Swift 4! */ */
ความคิดเห็นบรรทัดเดียวเขียนโดยใช้ // ที่จุดเริ่มต้นของความคิดเห็น
// My first program in Swift 4
อัฒภาค
Swift 4 ไม่ต้องการให้คุณพิมพ์อัฒภาค (;) หลังแต่ละคำสั่งในรหัสของคุณแม้ว่าจะเป็นทางเลือกก็ตาม และถ้าคุณใช้อัฒภาคคอมไพเลอร์จะไม่บ่นเกี่ยวกับเรื่องนี้
อย่างไรก็ตามหากคุณใช้หลายคำสั่งในบรรทัดเดียวกันจำเป็นต้องใช้อัฒภาคเป็นตัวคั่นมิฉะนั้นคอมไพเลอร์จะเพิ่มข้อผิดพลาดทางไวยากรณ์ คุณสามารถเขียนสวัสดีชาวโลก! โปรแกรมดังนี้ -
/* My first program in Swift 4 */
var myString = "Hello, World!"; print(myString)
ตัวระบุ
ตัวระบุ Swift 4 คือชื่อที่ใช้เพื่อระบุตัวแปรฟังก์ชันหรือรายการที่กำหนดโดยผู้ใช้อื่น ๆ ตัวระบุเริ่มต้นด้วยตัวอักษร A ถึง Z หรือ a ถึง z หรือขีดล่าง _ ตามด้วยตัวอักษรศูนย์หรือมากกว่าขีดล่างและตัวเลข (0 ถึง 9)
Swift 4 ไม่อนุญาตให้ใช้อักขระพิเศษเช่น @, $ และ% ภายในตัวระบุ Swift 4 คือcase sensitiveภาษาโปรแกรม ดังนั้นกำลังคนและกำลังคนจึงเป็นตัวบ่งชี้สองตัวที่แตกต่างกันใน Swift 4 นี่คือตัวอย่างบางส่วนของตัวระบุที่ยอมรับได้ -
Azad zara abc move_name a_123
myname50 _temp j a23b9 retVal
ในการใช้คำสงวนเป็นตัวระบุคุณจะต้องใส่ backtick (`) ก่อนและหลัง ตัวอย่างเช่น,class ไม่ใช่ตัวระบุที่ถูกต้อง แต่เป็น "class`ถูกต้อง
คำหลัก
คำหลักต่อไปนี้สงวนไว้ใน Swift 4 คำสงวนเหล่านี้ไม่สามารถใช้เป็นค่าคงที่หรือตัวแปรหรือชื่อตัวระบุอื่น ๆ ได้เว้นแต่จะมีการใช้เครื่องหมายย้อนกลับ -
คำหลักที่ใช้ในการประกาศ
คลาส | deinit | Enum | ส่วนขยาย |
Func | นำเข้า | ในนั้น | ภายใน |
ปล่อย | ตัวดำเนินการ | เอกชน | มาตรการ |
สาธารณะ | คงที่ | โครงสร้าง | ตัวห้อย |
ตัวพิมพ์ | หลากหลาย |
คำหลักที่ใช้ในงบ
หยุดพัก | กรณี | ดำเนินการต่อ | ค่าเริ่มต้น |
ทำ | อื่น | เจ๊ง | สำหรับ |
ถ้า | ใน | กลับ | สวิตซ์ |
ที่ไหน | ในขณะที่ |
คำหลักที่ใช้ในนิพจน์และประเภท
เช่น | dynamicType | เท็จ | คือ |
ศูนย์ | ตนเอง | ตนเอง | สุดยอด |
จริง | _คอลัมน์_ | _ไฟล์_ | _FUNCTION_ |
_ไลน์_ |
คำหลักที่ใช้ในบริบทเฉพาะ
การเชื่อมโยง | ความสะดวก | ไดนามิก | didSet |
สุดท้าย | ได้รับ | infix | inout |
ขี้เกียจ | ซ้าย | การกลายพันธุ์ | ไม่มี |
ไม่เปลี่ยนรูป | ไม่จำเป็น | แทนที่ | postfix |
ลำดับความสำคัญ | คำนำหน้า | มาตรการ | จำเป็น |
ขวา | ชุด | ประเภท | ไม่เป็นที่รู้จัก |
อ่อนแอ | willSet |
ช่องว่าง
บรรทัดที่มีเฉพาะช่องว่างอาจมีความคิดเห็นเรียกว่าบรรทัดว่างและคอมไพเลอร์ Swift 4 จะละเว้นมันโดยสิ้นเชิง
Whitespace เป็นคำที่ใช้ใน Swift 4 เพื่ออธิบายช่องว่างแท็บอักขระขึ้นบรรทัดใหม่และความคิดเห็น ช่องว่างแยกส่วนหนึ่งของคำสั่งออกจากอีกส่วนหนึ่งและเปิดใช้งานคอมไพเลอร์เพื่อระบุตำแหน่งที่องค์ประกอบหนึ่งในคำสั่งเช่น int สิ้นสุดลงและองค์ประกอบถัดไปเริ่มต้น ดังนั้นในข้อความต่อไปนี้ -
var age
ต้องมีอักขระช่องว่างอย่างน้อยหนึ่งอักขระ (โดยปกติคือช่องว่าง) ระหว่าง var และ ageเพื่อให้คอมไพเลอร์สามารถแยกแยะได้ ในทางกลับกันในข้อความต่อไปนี้ -
int fruit = apples + oranges //get the total fruits
ไม่จำเป็นต้องใช้อักขระเว้นวรรคระหว่างผลไม้และ = หรือระหว่าง = และแอปเปิ้ลแม้ว่าคุณจะมีอิสระที่จะรวมอักขระบางตัวเพื่อให้อ่านง่ายขึ้น
ช่องว่างทั้งสองด้านของตัวดำเนินการควรเท่ากันเช่น
int fruit = apples +oranges //is a wrong statement
int fruit = apples + oranges //is a Correct statement
ตัวอักษร
ลิเทอรัลคือการแสดงซอร์สโค้ดของค่าของจำนวนเต็มจำนวนทศนิยมหรือประเภทสตริง ต่อไปนี้เป็นตัวอย่างของตัวอักษร -
92 // Integer literal
4.24159 // Floating-point literal
"Hello, World!" // String literal
การพิมพ์ใน Swift
ในการพิมพ์อะไรก็ได้อย่างรวดเร็วเรามีคีย์เวิร์ด "พิมพ์"
พิมพ์มีคุณสมบัติที่แตกต่างกันสามประการ
Items - รายการที่จะพิมพ์
Separator - คั่นระหว่างรายการ
Terminator - ค่าที่บรรทัดควรสิ้นสุดเรามาดูตัวอย่างและไวยากรณ์ที่เหมือนกัน
print("Items to print", separator: "Value " , terminator: "Value")
// E.g. of print statement.
print("Value one")
// prints "Value one \n" Adds, \n as terminator and " " as separator by
default.
print("Value one","Value two", separator: " Next Value" , terminator: " End")
//prints "Value one Next Value Value two End"
ในคำสั่งการพิมพ์ครั้งแรกของโค้ดด้านบนจะเพิ่ม \ n ฟีดขึ้นบรรทัดใหม่เป็นตัวยุติตามค่าเริ่มต้นโดยที่ในคำสั่งพิมพ์ที่สองเราได้กำหนดให้ "End" เป็นเทอร์มิเนเตอร์ดังนั้นจึงจะพิมพ์ "End" แทน \ n
เราสามารถให้ตัวคั่นและเทอร์มิเนเตอร์ที่กำหนดเองได้ตามความต้องการ